ephyl_framework_v2
Differences
This shows you the differences between two versions of the page.
ephyl_framework_v2 [2022/09/28 17:36] – created aparis | ephyl_framework_v2 [2022/11/30 17:09] (current) – aparis | ||
---|---|---|---|
Line 1: | Line 1: | ||
# S3_CAP, a modular framework for slotted transmission | # S3_CAP, a modular framework for slotted transmission | ||
- | This tutorial | + | This tutorial shows how to use the [S3_CAP framework](https:// |
+ | |||
+ | First you need to retrieve this [docker image](https:// | ||
+ | |||
+ | < | ||
+ | you@yourpc: | ||
+ | you@yourpc: | ||
+ | </ | ||
+ | |||
+ | Access the docker container using ssh : | ||
+ | |||
+ | < | ||
+ | you@yourpc: | ||
+ | </ | ||
+ | |||
+ | In this environment, | ||
+ | |||
+ | |||
+ | New `upper/ | ||
+ | < | ||
+ | while True: | ||
+ | feedback_pmt = up.recv() | ||
+ | feedback = up.extract(feedback_pmt) | ||
+ | |||
+ | up.log(feedback[" | ||
+ | print(" | ||
+ | |||
+ | action = " | ||
+ | frame = feedback[" | ||
+ | |||
+ | if feedback[" | ||
+ | sequence = [[0, " | ||
+ | ulcch = str(" | ||
+ | else: | ||
+ | sequence = [[0, False], [1, " | ||
+ | ulcch = str(" | ||
+ | |||
+ | inst = up.create_SN_inst(feedback[" | ||
+ | up.send(inst) | ||
+ | |||
+ | up.log(frame, | ||
+ | print(" | ||
+ | </ | ||
+ | |||
+ | |||
+ | New `upper/ | ||
+ | < | ||
+ | while True: | ||
+ | feedback_pmt = up.recv() | ||
+ | feedback = up.extract(feedback_pmt) | ||
+ | |||
+ | up.log(feedback[" | ||
+ | print(" | ||
+ | |||
+ | list_dlcch = [] | ||
+ | frame = feedback[" | ||
+ | |||
+ | for sensor in up.list_sensors: | ||
+ | dlcch = str(" | ||
+ | list_dlcch.append([sensor, | ||
+ | |||
+ | inst = up.create_BS_inst(list_dlcch, | ||
+ | up.send(inst) | ||
+ | |||
+ | up.log(frame, | ||
+ | print(" | ||
+ | </ | ||
+ | |||
+ | You can also set the number of slot on the uplink channel, with the `slot_count` parameter in the sensor and base station upper files, and with the `--S` option inside the GNU Radio flowgraph. | ||
+ | |||
+ | You can now exit the docker container, to commit and push the updated version on your account. | ||
+ | < | ||
+ | you@yourpc: | ||
+ | you@yourpc: | ||
+ | you@yourpc: | ||
+ | you@yourpc: | ||
+ | you@yourpc: | ||
+ | </ | ||
+ | |||
+ | After booking the testbed with OAR, you can upload the image on three nodes of your choice with an SSH access, as follow : | ||
+ | < | ||
+ | nodeX: | ||
+ | container: | ||
+ | - image: [DOCKER USERNAME]/ | ||
+ | command: / | ||
+ | </ | ||
+ | |||
+ | Once connected to each of the three nodes, you can run the following commands. It will start the access policy and then the PHY layer of each node. | ||
+ | |||
+ | On `NODE_X` - the first sensor | ||
+ | |||
+ | < | ||
+ | python2 / | ||
+ | python2 / | ||
+ | </ | ||
+ | |||
+ | On `NODE_Y` - the second sensor | ||
+ | |||
+ | < | ||
+ | python2 / | ||
+ | python2 / | ||
+ | </ | ||
+ | |||
+ | On `NODE_Z` - the base station | ||
+ | |||
+ | < | ||
+ | python2 / | ||
+ | python2 / | ||
+ | </ | ||
+ | |||
+ | You will then observe the newly updated access policy. |
ephyl_framework_v2.1664379375.txt.gz · Last modified: 2022/09/28 17:36 by aparis