Giter VIP home page Giter VIP logo

plexe's Introduction

Plexe - The platooning extension for Veins

See the Plexe website <http://plexe.car2x.org/> for a tutorial, documentation,
and publications.

Plexe is composed of many parts. See the version control log for a full list of
contributors and modifications. Each part is protected by its own, individual
copyright(s), but can be redistributed and/or modified under an open source
license. License terms are available at the top of each file. Parts that do not
explicitly include license text shall be assumed to be governed by the "GNU
General Public License" as published by the Free Software Foundation -- either
version 2 of the License, or (at your option) any later version
(SPDX-License-Identifier: GPL-2.0-or-later). Parts that are not source code and
do not include license text shall be assumed to allow the Creative Commons
"Attribution-ShareAlike 4.0 International License" as an additional option
(SPDX-License-Identifier: GPL-2.0-or-later OR CC-BY-SA-4.0). Full license texts
are available with the source distribution.

Besides myself (Michele Segata), Plexe has been improved over the years thanks
to some incredibly valuable contributors:

Bastian Bloessl
Tobias Hardes
Julian Heinovski
Stefan Joerer
Max Schettler
Christoph Sommer

plexe's People

Contributors

abdelaha avatar agnmmd avatar dbuse avatar f-bronner avatar floxyz avatar gurjashanpannu avatar heinovski avatar ion-turcanu avatar michele-segata avatar mightycelu avatar mlindig avatar mohamedbelhassen avatar phongphuhanam avatar rhornig avatar riebl avatar sneumeier avatar sommer avatar sxleixer avatar thardes2 avatar venturina avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

plexe's Issues

CACC controller Plexe v2.1 queries

Hi Michele,

I have a few questions about the CACC controller used by the platooning vehicles in the 'sinusoidal scenario' in the Plexe simulations version 2.1. These are as follows;

1a: Do the vehicles have the 'collision avoidance function' while driving in a platoon (i.e., when the CACC controller is active)? If the front vehicle gets too close to the following vehicles will the vehicle perform any safety maneuvers?

1b: Are there any active local sensors in the platooning vehicles?

2a: Does the Plexe use the same CACC controller described on the SUMO webpage (https://sumo.dlr.de/docs/Car-Following-Models/CACC.html)?

2b: Does the CACC controller that Plexe uses, reside in Plexe or SUMO simulator?

3: Are there any specific references where I can find exactly how Plexe's CACC controller is modeled and its properties? I have been trying to find the documentation of how that controller is built and what safety properties it might have. Unfortunately, I have not been successful in finding the precise document explaining the CACC controller that Plexe uses.

I am looking forward to hearing from you.
I really appreciate any help you can provide.

Setting playground size well

Hi there,
I am trying to find a good way to set the size of my map. I keep getting the error message:
"tried moving host to (207.850, 1211.12) which is outside the playground"
I guest it is because my cars are moving outside of the map defined by the 3 parameters *.playgroundSizeX, *.playgroundSizeY, *.playgroundSizeZ.

I wonder if the function veins_eval_by_version does not solve this problem, but its code is nowhere to find.

Best regards
Hakim

Changing the communication topology in the plexe

Hello, I have been using plexe to research platoons in different scenarios. Something I am having difficulty doing is about changing the communication topology. For example, I could not find a way to change the way cars communicate. Is there a specific file where I can manipulate this topology? Could you please help me in this regard?
Thanks

Vehicle collided after lane change

Hello, I found platoons changed their lanes without considering safety in simulation. Therefore, the vehicle collided with the vehicle which was already running on that lane when changing lanes. How can I solve the problem?
参数2

Invalid speed distribution when parsing vType 'vtypeauto'

I have installed all components of Plexe as Tutorial Example 1 says, but when I ./run -u Cmdenv -c Sinusoidal -r 2, I got the following error message in SUMO GUI:

Loading configuration... done.
***Starting server on port 39569 ***
Loading net-file from './sumocfg/freeway.net.xml'... done (30ms).
Loading done.
Error: Invalid speed distribution when parsing vType 'vtypeauto' (distribution mean 1000.00 is larger than upper boundary 2.00)
Quitting (on error).

My OS is Ubuntu 16.04.
I am running Plexe-2.1, installed through git repo.
I have tried on another PC, but same problem occurs again.
Could you please help me with this ? Thanks very much.

Running error on Platooning example (Invalid speed distribution)

Hello michele-segate,

I am trying to run the plexe examples, I followed all the instructions on the web page (adding the path and all the rest...).
When I am trying to run the simulation from the terminal, I am getting the following error;

"Error: Invalid speed distribution when parsing vType 'vtypeauto' (distribution mean 1000.00 is larger than upper boundary 2.00)"

I very much appreciate if you please advice, thanks very much for your time in advance.
Best Regards.

CACC controller

Hi Michele,

I am wondering, would CACC fallbacks to ACC when information is not available from the preceding vehicle available in CACC controllers available in plexe?

Do you have any idea how to implement this fallback in mixed traffic scenarios? Any leads would be appreciated.

Thanks.

Version in doxy documentation

The script to generate the version number for the doxy documentation (merged in 81ac2ce) does not work with Plexe.

The script parses git tags beginning with plexe- but this repository does not contain any (e.g., for marking released versions such as plexe-3.0a1). To solve this issue, versions should be labelled with git tags instead of branches. Alternatively, the script should be changed to operate on branches.

Additionally, 0811fcd introduced another script to print the version number, which works and could also be used for the generation of the documentation. One script to extract the version number should be sufficient ;-)

Plexe-veins V2V communication

Hi Michele!

We have several questions regarding the platooniong communication of the vehicles in plexe-veins as below. If you could please explain them it would be great.
Please note that we are using the Omnet++ IDE.

1. Which layers (mac, physical, etc.) of wave protocol are modeled in plexe to represent the real-world communication?
2. The app and protocol folders represent which layers of the communication?
3. What type of the modulation scheme implemented in plexe for v2v communication?
4. Is there any error correction mechanisim implemented in v2v communication process?
7. How we choose the controllers which will be used?
8. How we select the scenario type in omnet such as braking and sinusoidal?
9. Is it possible to record the data with time prefix for different simulation runs?

Thanks for your time in advance!

Error on SUMO versions

Hello Michele,
Thank you very much for these libraries.

I am on Ubuntu 18 and I have some problems on installation that I've fixed them this way:

Error: undefined-reference-to-symbol-pthread-key-deleteglibc-2-2-5
Solution: $ make -j <my number of CPUs> **–pthread**

I believe this solved the problem... however, I am trying to run the tutorials:
Now, I am trying:
./run -u Cmdenv -c Sinusoidal -r 2

However, I am getting the following error:
<!> Model error: TraCI server "SUMO 1.6.0" reports API version 20, which is unsupported. We recommend using SUMO 0.32.0 -- in module (Veins::TraCIScenarioManagerForker) Highway.manager (id=6), at t=0s, event #2

QUESTION: Should I downgrade my SUMO version to 0.32 or is there any other solution available?
Downgrading will not be convenient since I am using CARLA on this same machine which needs the latest SUMO

Thank you very much.

Invalid Controller Selected in MSCFModel_CC

I tried out the Example 2: Extending Plexe Tutorial given in the website after installing instant Plexe 3.0.
I made the changes to source file accordingly and recompiled it. But running the simulator with command
plexe_run -u Cmdenv -c SinusoidalNoGui -r 6
keeps giving error message "Invalid controller selected in MSCFModel_CC" continuously.
How can I solve this?

PLEXE: Issue with generating plotting results

Hello,

I am getting below error when try to make at the analysis directory. error as below.

bash-3.2$  ./genmakefile.py parse-config > Makefile
bash-3.2$ make
Rscript generic-parser.R ../results/Braking_0_0.3_0.vec map-config default bra Rdata
During startup - Warning messages:
1: Setting LC_COLLATE failed, using "C" 
2: Setting LC_TIME failed, using "C" 
3: Setting LC_MESSAGES failed, using "C" 
4: Setting LC_MONETARY failed, using "C" 
infile:  ../results/Braking_0_0.3_0.vec 
outfile;  ../results/bra.Braking_0_0.3_0.Rdata 
-------------------------
run:  0 
Warning message:
In loadVectorsShaped(vecFile, add("vector", select = selector)) :
  no vectors loaded!
Error in eval(parse(text = condition)) : object 'nodeId' not found
Calls: subset -> subset.data.frame -> eval -> eval -> eval -> eval
Execution halted
make: *** [../results/bra.Braking_0_0.3_0.Rdata] Error 1

Please help me on the issue. Thanks

Regards,
Safras

A problem when running the Tutorial-Example 1

I could run the simulation successfully,but when i tried to plot the results,an error occurred

Rscript generic-parser.R ../results/Braking_0_1.2_0.vec map-config default bra Rdata
Error in library(omnetpp) : there is no package called ‘omnetpp’
Calls: source -> withVisible -> eval -> eval -> library
Execution halted
Makefile:41: recipe for target '../results/bra.Braking_0_1.2_0.Rdata' failed
make: *** [../results/bra.Braking_0_1.2_0.Rdata] Error 1

It happened after i ‘make’.Does anyone know how to solve it? Thanks.

env: ubuntu16.04 omnetpp5.1.1

Plexe_lte not working

Good afternoon,

I have followed the instructions on your website however when trying to tun the plexe_lte example it does not work, firstly because there is no plexe_lte_run in the bin folder and even doing ./configure and make it does not generate anything.

Am I missing some steps besides those reported in the building section?

Thanks in advance,

Martina

Error while running Tutorial-Extending Plexe

I installed Plexe 3.0 and made modifications according to whats given in the tutorial but its giving me the following error:

RUNTIME ERROR. A cRuntimeError exception is about to be thrown, and you
requested (by setting debug-on-errors=true in the ini file) that errors
abort execution and break into the debugger.
<!> Invalid controller selected -- in module (plexe::SinusoidalScenario) Highway.node[0].scenario (id=10), at t=1.01s, event #103
TRAPPING on the exception above, due to a debug-on-errors=true configuration option. Is your debugger ready?
zsh: trace trap plexe_run -u Cmdenv -c SinusoidalNoGui -r 6
Step #0.00 (0ms ?RT. ?UPS, TraCI: 53ms, vehicles TOT 0 ACT 0 BUF 0) Step #1.00 (1ms ~= 10.00RT, 8000.00UPS, TraCI: 3ms, vehicles TOT 8 ACT 8 BUF 0plexe:/src/plexe/examples/platooning% Error: tcpip::Socket::recvAndCheck @ recv: peer shutdown
Quitting (on error).
<!> Error launching TraCI server ("sumo --remote-port 45779 --seed 0 --configuration-file ./sumocfg/freeway.sumo.cfg"): exited with code 1. Make sure you have set $PATH correctly. -- in module (veins::TraCIScenarioManagerForker) Highway.manager (id=5), during network initialization

Error in Automatically Generating the header file by OMNET++

According to the Tutorial 7- Getting started with Plexe API, we tried creating an application for the Splitting scenario. But after making the changes and recompiling plexe (after recompiling sumo, omnte++ and veins) we encountered the following error:
./plexe/apps/GettingStartedApp.h:3:10: fatal error: 'plexe/messages/AbandonPlatoon_m.h' file not found
#include "plexe/messages/AbandonPlatoon_m.h"
^~~~~~~~~~~~~
1 error generated.
make[1]: * [Makefile:231: ../out/clang-release/src/plexe/apps/GettingStartedApp.o] Error 1
make[1]: * Waiting for unfinished jobs....
make[1]: Leaving directory '/home/plexe/src/plexe/src'
make: * [Makefile:38: all] Error 2
zsh: exit 2 make -j 2

I believe its because the given header file is to be generated automatically by the omnet++ but it hasn't. So, is recompiling the OMNET++ enough or is there any other way? Also afterwards what is the method to run this application? Is it necessary to create a seperate scenario for splitting?

sh: 1: sumo-gui: not found

Describe the wrong

I start omnet from "start menu list"
Run the example of engine
There are many errors:

图片
OMNeT++ Discrete Event Simulation (C) 1992-2019 Andras Varga, OpenSim Ltd.
Version: 5.6.2, build: 200518-aa79d0918f, edition: Academic Public License -- NOT FOR COMMERCIAL USE
See the license for distribution terms and warranty disclaimer

Setting up Qtenv...

Loading NED files from ../platooning: 1
Loading NED files from ../../src/plexe: 34
Loading NED files from ../../../veins-veins-5.2/examples/veins: 1
Loading NED files from ../../../veins-veins-5.2/src/veins: 43

Loading images from '/home/w/src/plexe-plexe-3.0/images': : 0
Loading images from '/home/w/src/veins-veins-5.2/images': : 0 veins/: 0 veins/node/
: 45 veins/sign/: 5
Loading images from '/home/w/src/omnetpp-5.6.2/images': : 0 abstract/: 90 background/
: 4 block/: 320 device/: 195 logo/: 1 maps/: 9 misc/: 70 msg/: 55 old/: 111 status/: 28

sh: 1: sumo-gui: not found
qt.qpa.xcb: QXcbConnection: XCB error: 14 (BadIDChoice), sequence: 1342, resource id: 81789194, major code: 55 (CreateGC), minor code: 0
qt.qpa.xcb: QXcbConnection: XCB error: 13 (BadGC), sequence: 1343, resource id: 81789194, major code: 72 (PutImage), minor code: 0
qt.qpa.xcb: QXcbConnection: XCB error: 13 (BadGC), sequence: 1344, resource id: 81789194, major code: 60 (FreeGC), minor code: 0
qt.qpa.xcb: QXcbConnection: XCB error: 14 (BadIDChoice), sequence: 1345, resource id: 81789195, major code: 139 (Unknown), minor code: 4
qt.qpa.xcb: QXcbConnection: XCB error: 143 (Unknown), sequence: 1347, resource id: 81789195, major code: 139 (Unknown), minor code: 27
qt.qpa.xcb: QXcbConnection: XCB error: 143 (Unknown), sequence: 1348, resource id: 81789195, major code: 139 (Unknown), minor code: 7
qt.qpa.xcb: QXcbConnection: XCB error: 6 (BadCursor), sequence: 1349, resource id: 81789196, major code: 138 (Unknown), minor code: 23
qt.qpa.xcb: QXcbConnection: XCB error: 6 (BadCursor), sequence: 1350, resource id: 81789196, major code: 138 (Unknown), minor code: 23
qt.qpa.xcb: QXcbConnection: XCB error: 6 (BadCursor), sequence: 1351, resource id: 81789196, major code: 2 (ChangeWindowAttributes), minor code: 0
qt.qpa.xcb: QXcbConnection: XCB error: 6 (BadCursor), sequence: 9888, resource id: 81789196, major code: 2 (ChangeWindowAttributes), minor code: 0
qt.qpa.xcb: QXcbConnection: XCB error: 6 (BadCursor), sequence: 10203, resource id: 81789196, major code: 2 (ChangeWindowAttributes), minor code: 0
qt.qpa.xcb: QXcbConnection: XCB error: 6 (BadCursor), sequence: 10380, resource id: 81789196, major code: 2 (ChangeWindowAttributes), minor code: 0
qt.qpa.xcb: QXcbConnection: XCB error: 6 (BadCursor), sequence: 10412, resource id: 81789196, major code: 2 (ChangeWindowAttributes), minor code: 0
qt.qpa.xcb: QXcbConnection: XCB error: 6 (BadCursor), sequence: 13414, resource id: 81789196, major code: 2 (ChangeWindowAttributes), minor code: 0
qt.qpa.xcb: QXcbConnection: XCB error: 6 (BadCursor), sequence: 13474, resource id: 81789196, major code: 2 (ChangeWindowAttributes), minor code: 0
qt.qpa.xcb: QXcbConnection: XCB error: 6 (BadCursor), sequence: 13719, resource id: 81789196, major code: 2 (ChangeWindowAttributes), minor code: 0
opp_run: ../../src/xcb_in.c:746:xcb_request_check: 假设 ‘!reply’ 失败。

platform

  • Ubuntu 22.04 LTS 5.15.0-39-generic x86_64
  • /home/w/src/omnetpp-5.6.2
  • /home/w/src/veins-veins-5.2
  • /home/w/src/plexe-plexe-3.0
  • ~/.bashrc:
....
export PATH=/home/w/src/omnetpp-5.6.2/bin:$PATH
export SUMO_HOME=/home/w/src/sumo-1_8_0
export PATH=/home/w/src/sumo-1_8_0/bin:$PATH
export PATH=/home/w/.local/lib/python3.7/site-packages:$PATH
  • /etc/environment:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
  • w@w-NH5x:~$ dpkg -l|grep qt5
ii  dde-qt5integration:amd64                   5.5.17-2                                amd64        Qt5 theme integration for Deepin application
ii  libqt5concurrent5:amd64                    5.15.3+dfsg-2                           amd64        Qt 5 concurrent module
ii  libqt5core5a:amd64                         5.15.3+dfsg-2                           amd64        Qt 5 core module
ii  libqt5dbus5:amd64                          5.15.3+dfsg-2                           amd64        Qt 5 D-Bus module
ii  libqt5gui5:amd64                           5.15.3+dfsg-2                           amd64        Qt 5 GUI module
ii  libqt5network5:amd64                       5.15.3+dfsg-2                           amd64        Qt 5 network module
ii  libqt5opengl5:amd64                        5.15.3+dfsg-2                           amd64        Qt 5 OpenGL module
ii  libqt5opengl5-dev:amd64                    5.15.3+dfsg-2                           amd64        Qt 5 OpenGL library development files
ii  libqt5positioning5:amd64                   5.15.3+dfsg-3                           amd64        Qt Positioning module
ii  libqt5printsupport5:amd64                  5.15.3+dfsg-2                           amd64        Qt 5 print support module
ii  libqt5qml5:amd64                           5.15.3+dfsg-1                           amd64        Qt 5 QML module
ii  libqt5qmlmodels5:amd64                     5.15.3+dfsg-1                           amd64        Qt 5 QML Models library
ii  libqt5quick5:amd64                         5.15.3+dfsg-1                           amd64        Qt 5 Quick library
ii  libqt5quickwidgets5:amd64                  5.15.3+dfsg-1                           amd64        Qt 5 Quick Widgets library
ii  libqt5sql5:amd64                           5.15.3+dfsg-2                           amd64        Qt 5 SQL module
ii  libqt5sql5-sqlite:amd64                    5.15.3+dfsg-2                           amd64        Qt 5 SQLite 3 database driver
ii  libqt5svg5:amd64                           5.15.3-1                                amd64        Qt 5 SVG module
ii  libqt5test5:amd64                          5.15.3+dfsg-2                           amd64        Qt 5 test module
ii  libqt5webchannel5:amd64                    5.15.3-1                                amd64        Web communication library for Qt
ii  libqt5webengine-data                       5.15.9+dfsg-1                           all          Web content engine library for Qt - Data
ii  libqt5webenginecore5:amd64                 5.15.9+dfsg-1                           amd64        Web content engine library for Qt - Core
ii  libqt5webenginewidgets5:amd64              5.15.9+dfsg-1                           amd64        Web content engine library for Qt - Widget
ii  libqt5widgets5:amd64                       5.15.3+dfsg-2                           amd64        Qt 5 widgets module
ii  libqt5x11extras5:amd64                     5.15.3-1                                amd64        Qt 5 X11 extras
ii  libqt5xdg3:amd64                           3.7.1-0ubuntu2                          amd64        Implementation of the XDG Specifications for Qt (shared lib)
ii  libqt5xdgiconloader3:amd64                 3.7.1-0ubuntu2                          amd64        Implementation of the XDG Iconloader for Qt (shared lib)
ii  libqt5xml5:amd64                           5.15.3+dfsg-2                           amd64        Qt 5 XML module
ii  qt5-gtk-platformtheme:amd64                5.15.3+dfsg-2                           amd64        Qt 5 GTK+ 3 platform theme
ii  qt5-qmake:amd64                            5.15.3+dfsg-2                           amd64        Qt 5 qmake Makefile generator tool
ii  qt5-qmake-bin                              5.15.3+dfsg-2                           amd64        Qt 5 qmake Makefile generator tool — binary file
ii  qt5dxcb-plugin:amd64                       5.0.46+git20220314-1                    amd64        Qt platform theme integration plugin for DDE

what did I do

1. There's no error when omnet started by terminal:

w@w-NH5x:~$ omnetpp 
Starting the OMNeT++ IDE...

property dialog-c/c++ build-environment-environment variablesto set-PATH:

/home/w/src/omnetpp-5.6.2/bin:/home/w/.local/lib/python3.7/site-packages:/home/w/src/sumo-1_8_0/bin:/home/w/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin

Any example can run successfully.

2. When I open in the menu list, the error occurs

w@w-NH5x:~/src/omnetpp-5.6.2$ make install-menu-item
and click the omnet icon and problems occurs:

图片

图片
An internal error occurred during: "C/C++ Indexer".
java.nio.BufferUnderflowException

Run veins_launchd
w@w-NH5x:~$ python3 veins_launchd -vv -c /home/w/src/sumo-1_8_0/bin/sumo

Run the example of veins successfully:
图片

Run the example of engine unsuccessfully:
图片

property dialog-c/c++ build-environment-environment variablesto set-PATH like this, which is different from above:

/home/w/src/omnetpp-5.6.2/bin:/home/w/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin

what effect I want

Click the omnet icon from menu-list, and then run all the examples sccessfully.
I don't want to open terminal and input omnetpp.

Tks

I'm not sure if this is a problem from omnet or java, but it works well in my another computer which is Ubuntu 20.04.4 LTS. Thank you very much for your reply.

instant plexe run error

Hi, michele-segate, thanks for your code. I install the instant plexe on my VmWare virtual machine, when I run the examples, it can run successfully by sumo. But I want to run it in sumo-gui, it stucks in the map loading interface. Before run examples, I just run:

python "/home/plexe/src/plexe-veins/sumo-launchd.py" -vv -c "/home/plexe/src/plexe-sumo/bin/sumo-gui"

Can you help me find what's wrong? Thank you.

Potential error issue in autolanechange example

Hi, I have run the autolanechange demo and found a potential issue in the configuration of this example. As the platoon size variable “platoonSize” should be an int number to be read in RingTrafficManager.cc, **.traffic.platoonSize should be configured by using intuniform() instead of uniform() in omnetpp.ini, i.e., **.traffic.platoonSize = intuniform(3,8,5). Otherwise, a potential error would occur when casting a double to an int, such as the one stating "<!> Cannot cast 4.10097 from type double to integer (note: no implicit conversion from double to int) -- in module (RingTrafficManager) Higway.traffic (id=6), at t=0.01s, event #4" .

How to set Platooning leader

There is a platooning example in Plexe-Veins which i executed,

The question is as follows,

There are 8 vehicles in the platooning and the leader is the third vehicle [Node(2)]
How can we change the leader from third vehicle to any other such as the first vehicle?

platooning_1

Thanks in advance
Best regards,

Update Example2 in Plexe guide for sucessful build

Issue

Following steps in example 2 lead to an unsuccessful build with compilation errors.

Proposed Changes

image
Data type SUMOReal should be changed to double

image
Function TplConvert::_2double(value.c_str()) should be changed to StringUtils::toDouble(value.c_str())

image
Better wording is to say replicate the changes made to CC_Const.h in SUMO. If the file is copy-pasted, we run into all sorts of build errors as the file in SUMO uses namespace Plexe while the one in plexe uses plexe (notice the capitalization)

image
As a result of above modification, change namespace from Plexe to plexe here.

After these changes, I've verified the build is successful and plexe runs as expected with the new custom controller.

Packet error rate in Plexe

Hi! I am struggling to implement platooning with different packet error rates. Could you please advise how may I vary packet error rates in plexe?

Thanks in advance.

online platooning

Hi
Is it possible to form a platoon online (while the simulation is running)? I have not seen any examples that make platoons according to the traffic flow.

"/usr/bin/env: 'python': No such file or directory" error when running the configure command that is, "./configure --with-veins=../veins"

Hi, I have Ubutu 22.04 installed on my computer with Veins version 5.2 and Plexe version 3.0a2.
In order to run the plexe examples from the terminal I run the following command;

cd ~/src/plexe
./configure --with-veins=../veins

I got the following error;
/usr/bin/env: 'python': No such file or directory

My Python version is 3.10.12

Need your guidance to solve the issue.

Thanks in advance,

Best regards!

Bernoullian loss model in Plexe

Hi Michele,

I am wondering if the Bernoullian loss model is available in Plexe to create artificial packet losses? Any leads would be appreciated.

Thanks.
Mohit

Error Plexe v3.1 when running Example 2 - Extending Plexe

In Plexe v3.1, according to Example 2
image
After modifying the code according to Example 2, the following error will occur during the compilation process:

wyc@WYC:~$ cd ~/src/plexe
wyc@WYC:~/src/plexe$ ./configure --with-veins=../veins
Determining Veins version.
Found Veins version 5.2. Okay.
Configure done. You can now run 'make'.
wyc@WYC:~/src/plexe$ make
Creating script "bin/plexe_run"
make[1]: enter directory “/home/wyc/src/plexe/src”
plexe/scenarios/BaseScenario.cc
plexe/scenarios/BaseScenario.cc:68:25: error: use of undeclared identifier 'strController'
        else if (strcmp(strController, "MYCC") == 0) {
                        ^
plexe/scenarios/BaseScenario.cc:69:13: error: use of undeclared identifier 'controller'
            controller = plexe::MYCC;
            ^
2 errors generated.
make[1]: *** [Makefile:185:../out/clang-release/src/plexe/scenarios/BaseScenario.o] error 1
make[1]: leave directory“/home/wyc/src/plexe/src”
make: *** [Makefile:38:all] error 2

How to solve the above problem?

what does these parameters mean?

carFollowModel="CC" tauEngine="0.5" omegaN="0.2" xi="1" c1="0.5" lanesCount="4" ccAccel="1.5" ploegKp="0.2" ploegKd="0.7" ploegH="0.5"
These parameters differ from sumo's default parameter,could you please tell me what "tauEngine="0.5" omegaN="0.2" xi="1" c1="0.5"" mean ?

Changing the Vehicle Type

Hi Michele,
Can u just state how can we change the type of vehicles(based on length, speed etc.) in a platoon such that it consists of different types of vehicles and on which file should we modify the code?

sumo-gui: not found

Hi there. I'm trying to run the platooning example of Plexe. I was able to run the veins example of Veins. I used the command < /sumo-launchd.py -vv -c '/home/arthurfreitas/omnet-folder/sumo-1.9.2/bin/sumo-gui' > to connect Veins and Sumo.

However, I could not run Plexe.

I'm using:

  • Ubuntu 18.04
  • Sumo 1.9.2
  • Omnet++ 5.6.2
  • Veins 5.1
  • Plexe 3.0

And this is the error message that appears.

OMNeT++ Discrete Event Simulation (C) 1992-2019 Andras Varga, OpenSim Ltd.
Version: 5.6.2, build: 200518-aa79d0918f, edition: Academic Public License -- NOT FOR COMMERCIAL USE
See the license for distribution terms and warranty disclaimer

Setting up Qtenv...

Loading NED files from .: 1
Loading NED files from ../../src/plexe: 34
Loading NED files from ../../../veins-5.1/examples/veins: 1
Loading NED files from ../../../veins-5.1/src/veins: 43

Loading images from '/home/arthurfreitas/omnet-folder/plexe-master/images': : 0
Loading images from '/home/arthurfreitas/omnet-folder/veins-5.1/images': : 0 veins/: 0 veins/node/
: 45 veins/sign/: 5
Loading images from '/home/arthurfreitas/omnet-folder/omnetpp-5.6.2/images': : 0 abstract/: 90 background/
: 4 block/: 320 device/: 195 logo/: 1 maps/: 9 misc/: 70 msg/: 55 old/: 111 status/: 28

sh: 1: sumo-gui: not found
The X11 connection broke: No error (code 0)
XIO: fatal IO error 22 (Invalid argument) on X server ":0"
after 1023 requests (1023 known processed) with 0 events remaining.

It is not finding the sumo-gui.

Complex-IFT-based controllers in Plexe

Hi Michele,

I am wondering if plexe has any CACC controller designed based on information from more than one preceding vehicle? All existing controllers available in plexe are either based on simple predecessor-following or leader-predecessor-following based IFT.

Thanks in advance,

Best regards,
Mohit

OpenCV2X together with 802.11p

Hello,

I am trying to analyze the "cohabitation" within the 5.8GHz frequency band. For that, I have integrated OpenCV2X in plexe and I have created my own car that has both interfaces available. For testing purposes, I am sending Platoon beacons through both interfaces at the same time.

image

Both interfaces are working correctly (send and receive messages), but my main doubt is if each type of NIC work independently or not. In reality, 802.11p sees C-V2X as noise because it won't be able to decode the frames.

I've just made some simple simulations, but I am guessing that the PHY layer implementations of simuLTE and veins are totally independent, no? Therefore, even if I configure them to work within the same channel, they will not affect, or do they really share a "common" channel?

Thanks in advance,

Joseba

Mac OS build tools and libraries

Hi,
Is there a known fix for getting the tools and libraries when building with Mac OS? It seems to me that some of the tools such as build-essential are not available for mac. Are there specific steps one could take to loop in the needed dependencies specifically for Mac OS? Thanks in advance.

SUMO Re-compiling Issue

Hi Michele,
I'm using the SUMO with the Plexe and I re-built the source code of both Plexe and SUMO for introducing our custom car following model. But when I recompile the SUMO I'm getting a lot of "Could not find" errors mainly in Java and JNI.

image Is this normal or should I need to solve the errors? If so, how can I solve these errors?

**PLEXE-version:**Instant Plexe 3.0
**SUMO-version:**1.7.0
**operating system:**Debian 10, Linux 4, GNOME 3

A runtime error occured: Error launching TraCI server

imgpsh_mobile_save

When i tried to run any example of plexe-veins i got the following error. I see the file named "freeway.sumo.cfg" in my project.

<!> Error launching TraCI server ("sumo-gui --remote-port 50501 --seed 0 --configuration-file ./sumocfg/freeway.sumo.cfg"): the file is not found.
. Make sure you have set $PATH correctly. -- in module (Veins::TraCIScenarioManagerForker) Highway.manager (id=5), during network initialization

what is it i am doing wrong? Need your help

Thanks in advance,

Best regards,

Plexe various questions

Hello,
I am trying to install plexe on my system (MacOs M2 Sonoma). I am facing the following error when executing:

cd ~/src/omnetpp-<your version>
./configure

The error it gives is:

checking if all necessary Python modules are available... no
configure: error: Some Python modules required by the IDE were not found: numpy scipy pandas matplotlib posix_ipc

In the Building section of the Plexe website it is mentioned to substitute the setenv file, but the link is not working for me.
What should I do?

I also tried to use Instant Plexe on UTM (converting OVA file in the extension UTM uses) but it is really slow and unreactive so it is impossible for me to use. Have you got any advice on which way is best for me? I would like to use Plexe for my Bachelor's thesis. Thank you in advance.

Obtaining results for platoons

Hi,
This is Prashanth Kannan, I have been using Plexe for my research on Platoons and different scenarios have been developed using OSM's. But, as per real time data, if a platoon vehicle was used and the car following model is CACC then platoon follower vehicle should consume less fuel than that of platoon leader vehicle. But, if I run the same in Plexe then fuel consumption for all the vehicles were same. Could you please help me in this regard for obtaining better results.
Please do let me know if you need any other information.
Thanks

Does PLEXE support simu5g?

Hello, I'm now doing some research on vehicular edge computing. I want to know, is there any possible to combine simu5g.mec model with PLEXE?
I'll appreciated it ,if I can hear some reply!

Strange E2E Latency for Platoon Leader.

I was making some measurements regarding the end to end latencies between vehicles. In order to do this, I modified the BaseProtocol.cc file and also the PlatooningBeacon_m.cc accordingly.

I added one field in the Platoon Beacon that keeps the simulation time. In the "BaseProtocol.cc" file, I sent the simulation time by Unicast Protocol and then received it.

When receiving and plotting the results I have realized something strange. The values of latency received from the leader are almost double as big as those from front vehicle. The even more strange thing is that these results occur only when the beaconing interval is smaller than 0.5 sec (which should not make any sense since we are speaking for e2e latency).

Is there any chance that the MAC Layer treats the packets sent from leader differently?

Windows installation problem - file not found

Hello guys! I'm installing the plexe on windows 10, and after run "make", i got this error:

/c/User/plexe-plexe-3.0$ make
make[1]: Entering directory '/c/User/plexe-plexe-3.0/src'
plexe/apps/BaseApp.cc
plexe/apps/BaseApp.cc:25:10: fatal error: 'veins/modules/messages/BaseFrame1609_4_m.h' file not found
#include "veins/modules/messages/BaseFrame1609_4_m.h"
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make[1]: *** [Makefile:228: ../out/clang-release/src/plexe/apps/BaseApp.o] Error 1

Inside the folder "messages", there is no BaseFrame1609_4_m.h file.
I don't understood why this file wasn't created.

Can anyone help?

Vehicles got collided after Implementing the MYCC controller

Screenshot (272)
The vehicles are getting collided in the braking scenario after implementing the mycc controller following the tutorial on "extending plexe".
We used the Mycc Control Law stated in the website and the vehicles in the braking scenario are getting collided in the sumo GUI as shown above and also in Sinusoidal scenario the last 3 vehicles in an 8 vehicle platoon are not maintaining a constant inter-vehicular distance between them and rather changing now and then.
Can you suggest what should we do in order to make the situation better and also it wud be helpful if u can state on where should we make changes in the types of vehicles in order to make the platoon heterogenous?

Strange vehicle behaviour

strange_sumo_behaviour

I was just trying to figure out what has happened in the simulation from an old logged data. I am wondering if anyone has experience such sudden change in speed before? According to the position, that vehicle (vehicle4) eventually collide with another vehicle after the sudden speed change (within a few second), I am just wondering if that is the indication that the vehicle has crashed in SUMO (then probably I should add that to the condition when detecting collision)

Unfortunately, this is not the log generated by Plexe so I do not have all parameters that are available there. The maximum speed allowed for those vehicles is 41 m/s (which is the value it jumps to)

I was using Plexe-2.0 (with plexe-sumo 0.26.0)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.