aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorandreas128 <Andreas>2017-03-11 18:18:34 +0000
committerandreas128 <Andreas>2017-03-11 18:18:34 +0000
commit3ee39e3ae187e76b252b5758c12bd35e5707e187 (patch)
treefaa71fde21f869a34eb69806661faf11c00f1adc
parent1200ad3e9bb166d2f2599f47e0503b37eb70c20f (diff)
downloadODR-StaticPrecorrection-3ee39e3ae187e76b252b5758c12bd35e5707e187.tar.gz
ODR-StaticPrecorrection-3ee39e3ae187e76b252b5758c12bd35e5707e187.tar.bz2
ODR-StaticPrecorrection-3ee39e3ae187e76b252b5758c12bd35e5707e187.zip
Add sholder analysis
-rw-r--r--grc/parallel_measurement.grc2
-rw-r--r--receive_tcp.ipynb80
-rw-r--r--src/ReceiveDictTcp.py2
-rw-r--r--sync-measurement-while-sending.ipynb117
4 files changed, 101 insertions, 100 deletions
diff --git a/grc/parallel_measurement.grc b/grc/parallel_measurement.grc
index c1385c5..c2f077e 100644
--- a/grc/parallel_measurement.grc
+++ b/grc/parallel_measurement.grc
@@ -708,7 +708,7 @@
</param>
<param>
<key>frame_rate</key>
- <value>1</value>
+ <value>5</value>
</param>
<param>
<key>_coordinate</key>
diff --git a/receive_tcp.ipynb b/receive_tcp.ipynb
index f6df54a..8c2cb79 100644
--- a/receive_tcp.ipynb
+++ b/receive_tcp.ipynb
@@ -19,8 +19,10 @@
"import src.dab_util as du\n",
"import src.signal_gen as sg\n",
"import src.tcp_sync as ts\n",
+ "import src.dab_tuning_lib as dt\n",
"reload(sg)\n",
- "reload(du)"
+ "reload(du)\n",
+ "reload(dt)"
]
},
{
@@ -56,7 +58,7 @@
},
"outputs": [],
"source": [
- "sender = sdt.SendDictTcp('127.0.0.1', 1111)"
+ "sender = sdt.SendDictTcp('127.0.0.1', 1112)"
]
},
{
@@ -67,6 +69,16 @@
"editable": true
},
"outputs": [],
+ "source": []
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "deletable": true,
+ "editable": true
+ },
+ "outputs": [],
"source": [
"sender.send({\"txgain\":60})"
]
@@ -86,7 +98,55 @@
{
"cell_type": "code",
"execution_count": null,
- "metadata": {},
+ "metadata": {
+ "deletable": true,
+ "editable": true
+ },
+ "outputs": [],
+ "source": []
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "deletable": true,
+ "editable": true
+ },
+ "outputs": [],
+ "source": [
+ "def measure_sholders():\n",
+ " for i in range(10):\n",
+ " t1.has_msg()\n",
+ " msgs = t1.get_msgs(20)\n",
+ " sholders = [dt.calc_signal_sholder_ratio(np.array(msg), 8000000) for msg in msgs]\n",
+ " std = np.std(sholders)\n",
+ " mean = np.mean(sholders)\n",
+ " if std/mean < 0.05:\n",
+ " continue\n",
+ " else:\n",
+ " return np.mean(sholders)\n",
+ " raise Exception(\"Variance of measurement to high\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "deletable": true,
+ "editable": true
+ },
+ "outputs": [],
+ "source": [
+ "measure_sholders()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "deletable": true,
+ "editable": true
+ },
"outputs": [],
"source": []
},
@@ -99,9 +159,7 @@
},
"outputs": [],
"source": [
- "a = t1.has_msg()\n",
- "a = np.fft.fftshift(np.sum(np.array(t1.get_msgs(10)), axis=0))\n",
- "plt.plot(a)"
+ "t1.has_msg()"
]
},
{
@@ -132,6 +190,16 @@
"editable": true
},
"outputs": [],
+ "source": []
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "deletable": true,
+ "editable": true
+ },
+ "outputs": [],
"source": [
"#top.stop()\n",
"#top.wait()"
diff --git a/src/ReceiveDictTcp.py b/src/ReceiveDictTcp.py
index 464a6ec..3feec31 100644
--- a/src/ReceiveDictTcp.py
+++ b/src/ReceiveDictTcp.py
@@ -21,7 +21,7 @@ class ReceiveDictTcp(object):
self.sock.listen(5)
while True:
client, address = self.sock.accept()
- client.settimeout(60)
+ client.settimeout(0)
print("connecting to " + str(client) + " " + str(address))
self.listenToClient(client,address)
diff --git a/sync-measurement-while-sending.ipynb b/sync-measurement-while-sending.ipynb
index 5e9ef00..e1f7ba9 100644
--- a/sync-measurement-while-sending.ipynb
+++ b/sync-measurement-while-sending.ipynb
@@ -120,7 +120,7 @@
},
"outputs": [],
"source": [
- "receiver = rdt.ReceiveDictTcp('127.0.0.1', 1111)"
+ "receiver = rdt.ReceiveDictTcp('127.0.0.1', 1112)"
]
},
{
@@ -162,30 +162,6 @@
"editable": true
},
"outputs": [],
- "source": [
- "top.uhd_usrp_source_0.set_gain(20)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "deletable": true,
- "editable": true
- },
- "outputs": [],
- "source": [
- "top.uhd_usrp_sink_0_0.set_gain(40)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "deletable": true,
- "editable": true
- },
- "outputs": [],
"source": []
},
{
@@ -198,33 +174,31 @@
"outputs": [],
"source": [
"while True:\n",
- " time.sleep(1)\n",
- " if not receiver.queue.empty():\n",
- " d = receiver.queue.get()\n",
- " \n",
+ " d = receiver.queue.get()\n",
+ " \n",
+ " print(d)\n",
+ " k = d.keys()[0]\n",
+ " if k == \"a1\":\n",
" print(d)\n",
- " k = d.keys()[0]\n",
- " if k == \"a1\":\n",
- " print(d)\n",
- " top.dpd_memless_poly_0.set_a1(d[k])\n",
- " if k == \"a2\":\n",
- " top.dpd_memless_poly_0.set_a2(d[k])\n",
- " if k == \"a3\":\n",
- " top.dpd_memless_poly_0.set_a3(d[k])\n",
- " if k == \"a4\":\n",
- " top.dpd_memless_poly_0.set_a4(d[k])\n",
- " if k == \"a5\":\n",
- " top.dpd_memless_poly_0.set_a5(d[k])\n",
- " if k == \"a6\":\n",
- " top.dpd_memless_poly_0.set_a6(d[k])\n",
- " if k == \"a7\":\n",
- " top.dpd_memless_poly_0.set_a7(d[k])\n",
- " if k == \"a8\":\n",
- " top.dpd_memless_poly_0.set_a8(d[k])\n",
- " if k == \"txgain\":\n",
- " top.uhd_usrp_sink_0_0.set_gain(d[k])\n",
- " if k == \"rxgain\":\n",
- " top.uhd_usrp_source_0.set_gain(d[k])"
+ " top.dpd_memless_poly_0.set_a1(d[k])\n",
+ " if k == \"a2\":\n",
+ " top.dpd_memless_poly_0.set_a2(d[k])\n",
+ " if k == \"a3\":\n",
+ " top.dpd_memless_poly_0.set_a3(d[k])\n",
+ " if k == \"a4\":\n",
+ " top.dpd_memless_poly_0.set_a4(d[k])\n",
+ " if k == \"a5\":\n",
+ " top.dpd_memless_poly_0.set_a5(d[k])\n",
+ " if k == \"a6\":\n",
+ " top.dpd_memless_poly_0.set_a6(d[k])\n",
+ " if k == \"a7\":\n",
+ " top.dpd_memless_poly_0.set_a7(d[k])\n",
+ " if k == \"a8\":\n",
+ " top.dpd_memless_poly_0.set_a8(d[k])\n",
+ " if k == \"txgain\":\n",
+ " top.uhd_usrp_sink_0_0.set_gain(d[k])\n",
+ " if k == \"rxgain\":\n",
+ " top.uhd_usrp_source_0.set_gain(d[k])"
]
},
{
@@ -256,47 +230,6 @@
},
"outputs": [],
"source": [
- "# reload(du)\n",
- "res = []\n",
- "\n",
- "\n",
- "t = time.time()\n",
- "for txgain, rxgain in zip(txgains, rxgains):\n",
- " print (txgain, rxgain)\n",
- " res_tmp = None\n",
- " for i in range(30):\n",
- " \n",
- " #top.file_sink_out.close()\n",
- " #top.blocks_file_source_0.close()\n",
- " \n",
- " #top.file_sink_out.open(path_out)\n",
- " #top.file_sink_out.open(\"/tmp/\" + str(i))\n",
- " #top.blocks_file_source_0.open(path_in, False)\n",
- " \n",
- " time.sleep(1)\n",
- " \n",
- " \n",
- " #a_in = np.fromfile(path_in, dtype=np.complex64)\n",
- " #a_out = np.fromfile(path_out, dtype=np.complex64)\n",
- " \n",
- " #extract_measurement(a_in, a_out, rxgain, 0.95, 64, debug = True)\n",
- " #\n",
- " #plt.plot(a_in[:1000])\n",
- " #plt.show()\n",
- " \n",
- " res.append(res_tmp)\n",
- "time.time() - t"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "deletable": true,
- "editable": true
- },
- "outputs": [],
- "source": [
"#top.stop()\n",
"#top.wait()"
]