PX4-Autopilot-Simulink-Interface
PX4-Autopilot-Simulink-Interface copied to clipboard
Change UDP communications address to localhost from '192.168.46.2'.
Hello, I have a Simulink model of a quadcopter which has the required infrastructure to send data to and receive from PX4 sitl. I connect the s-function block, the model compiles successfully; however, UDP communication is not established.
I changed the following line in PX4Main.c from:
_server.sin_addr.S_un.S_addr = inet_addr("192.168.46.2");
to
_server.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
I create the mex file using 'BuildPX4Interface.m'.
I am not using a Ubuntu machine to run the px4 software by the way. It simply runs as a separate window after I type 'make px4_sitl none'. The only message after I am getting 'Simulator connected on TCP port 4560.' is
ERROR [simulator] poll timeout 0, 111
Thanks in advance.
I was in fact able to change the ip to 'localhost' and managed to get a connection. The problem had stemmed from the interface being designed for a previous version of PX4 Firmware. I installed 'PX4.Windows.Cygwin.Toolchain.0.5' and checked out release v1.8.2. The problem I am having now is not the sensor data not being synchronous. I am getting the following errors: ...
WARN [sensors] Remaining sensors after failover event 0: Accel #0 priority: 1 WARN [sensors] Remaining sensors after failover event 0: Accel #1 priority: 1 ERROR [sensors] Gyro #0 fail: TIMEOUT! ERROR [sensors] Sensor Gyro #0 failed. Reconfiguring sensor priorities. WARN [sensors] Remaining sensors after failover event 0: Gyro #0 priority: 1 ERROR [sensors] Accel #0 fail: TIMEOUT! ERROR [sensors] Sensor Accel #0 failed. Reconfiguring sensor priorities. WARN [sensors] Remaining sensors after failover event 0: Accel #0 priority: 1 WARN [sensors] Remaining sensors after failover event 0: Accel #1 priority: 1
...
I tried running my Simulation running at 250 Hz (It used to run at 480 Hz); however, it did not solve the problem.
Could you give me a tutorial about how to write s-funtion for IMU block, thanks! @straycat11