I'm running a small simulation in OMNeT++, making use of the Inet. I am simulating a file upload from a single client to a server over a TCP connection. I want to use different seeds for the BER. The BER is somewhere around 1e-7.
My idea was to first let the BER be randomly distributed:
[General]
network = MyNetwork
MyNetwork.BER = truncnormal(1e-7,1e-8)
Now, I know there's a way to repeat the simulation, by either including repeat = 10 or ${repetition=0...9} somewhere in the .ini file. But what would be the exact syntax? I cannot just write this. And how do I select different seeds for the BER? There is some seed-set =command available for the .ini as well, but again I don't know how to use it. Can you please help out?
Related
I noticed that setting the seed-set in the "ini" file for a Veins-OMNET++ simulation, will only affect the communication-related values by comparing different runs at a specific time. i.e. at a particular time for different runs, the vehicles' mobilities values (x,y, speed, direction) are relatively the same. Could you please confirm that?
However, when I set the <seed value="seedValue" /> in the "mapname.launchd.xml" file, the mobilities of the vehicles change between runs. My second question is, Is changing the seed for SUMO affect the traffic flow (veh/h) set in the route file (.rou.xml)?
seed-set controls OMNeT++/Veins parameters defined as random variables in your omnetpp.ini file, something like **.packetSize = uniform(100B, 500B). SUMO's seed does the same job on the SUMO side. I assume you use VeinsInetMobility in your scenario -- in that case your speed and positions distribution is controlled by SUMO's seed since all computations are happening there, if you use any of inet's internal mobilities and set it in omnetpp.inifile -- then it is controlled by seed-set.
I am learning sumo and Veins, using the F2MD framework for simulation, but I have encountered some problems. I am trying to get Lanearea Detectors output with sumo, when I can use the command:"sumo-gui -a lust.add.xml"(which already set Lanearea Detectors additional) ,I can get the output file like:xxx.output.xml. But when i use sumo-launchd.py to start the same simulation,it don't have any output file , This confuses me, hope someone can help me, thank!
You need to find the sumo configuration which is running and add the line
<additional-files value="lust.add.xml"/>
or add the file to the list if the entry is already present.
I want to integrate fingerprint sensor in my project. For the instance I have shortlisted R307, which has capacity of 1000 fingerprints.But as project requirement is more then 1000 prints,so I will going to store print inside the host.
The procedure I understand by reading the datasheet for achieving project requirements is :
I will register the fingerprint by "GenImg".
I will download the template by "upchr"
Now whenever a fingerprint come I will follow the step 1 and step 2.
Then start some sort of matching algorithm that will match the recently downloaded template file with
the template file stored in database.
So below are the points for which I want your thoughts
Is the procedure I have written above is correct and optimized ?
Is matching algorithm is straight forward like just comparing or it is some sort of tricky ? How can
I implement that.Please suggest if some sort of library already exist.
The sensor stores the image in 256 * 288 pixels and if I take this file to host
at maximum data rate it takes ~5(256 * 288*8/115200) seconds. which seems very
large.
Thanks
Abhishek
PS: I just mentioned "HOST" from which I going to connect sensor, it can be Arduino/Pi or any other compute device depends on how much computing require for this task, I will select.
You most probably figured it out yourself. But for anyone stumbling here in future.
You're correct for the most part.
You will take finger image (GenImg)
You will then generate a character file (Img2Tz) at BufferID: 1
You'll repeat the above 2 steps again, but this time store the character file in BufferID: 2
You're now supposed to generate a template file by combining those 2 character files (RegModel).
The device combines them for you, and stores the template in both the character buffers
As a last step; you need to store this template in your storage (Store)
For searching the finger: You'll take finger image once, generate a character file in BufferID : 1 and search the library (Search). This performs a linear search and returns the finger id along with confidence score.
There's also another method (GR_Identify); does all of the above automatically.
The question about optimization isn't applicable here, you're using a 3rd party device and you have to follow the working instructions whether it's optimized or not.
The sensor stores the image in 256 * 288 pixels and if I take this file to host at maximum data rate it takes ~5(256 * 288*8/115200) seconds. which seems very large.
I don't really get what you mean by this, but the template file ( that you intend to upload to your host ) is 512 bytes, I don't think it should take much time.
If you want an overview of how this system is implemented; Adafruit's Library is a good reference.
Greeting All,
I have two questions regarding OMNET++ output results
1- I have a simulation that uses AODV routing protocol in VANET network, but
when I record pcap for this simulation, it's shown as corrupted or damage even when I spill it to multi pcap file. How can I solve that? is the Inet pcap support AODV?
2-Is there a way to write this output (in below pic) to a text file or exported as excel format (I highlighted with red color).
I need all the information (event #, time, Relevant hop, name, info). I can copy it but it takes a time when I have around 10000 events?
Thanks in advance
If I am not wrong, you should be able to record the information you want with the statistics methods provided by OMNeT++. You should refer to cOutVector for real-time data recording. Statistical Collection are well explained in Part. 5 of the OMNeT++ TicToc Tutorial 1.
Once you have recorded your data, you can export them from the Browse Data interface (select the vectors you previously recorded in the browse data tab, right click and select Export Data).
I am trying to get different results for the code I have written in veins. I would like to run simulation multiple times to get average of all result. Issue I am facing is when I use repeat=5 i get exact same result in all 5 runs. I want to regenerate the network each time it repeats. I have written code to place RSUs in random positions but i get same result. What I can try?
Frist of all, see the TicToc Tutorial.
For your issue, you need to set a seed for each run as the OMNet Manual show
For me, the best way is set seed-set as the repetition number(repeat)
seed-set = ${repetition}
To start all repetitions of a simulation go to Run Configurations and set Cmdenv as User interface and:
for OMNeT++ 5.0 or older: set * (asterisk) in Runnumber
for OMNeT++ 5.1: set 0..4 in Run(s)
As a result you will obtain five set of results.
Optionally you can choose more than one processes to run in parallel or CPUs/processes to use in Run Configurations.