~set_stream_rate ์๋น์ค ํธ์ถ์ ์ฌ์ฉํ์ฌ IMU์ ์ ๋ฐ์ดํธ ์๋๋ฅผ ๋์ด๋ ค๊ณ ํฉ๋๋ค. ๋๋ ๋ถํํ๋ ์ฑ๊ณตํ์ง ๋ชปํ๊ณ ๋น์จ์ ๋์ด๊ฑฐ๋ ๋ฎ์ถ๋ ค๊ณ ์๋ํ์ต๋๋ค.
๋๋ ๋ค์์ ์๋ํ๋ค:
ํฐ๋ฏธ๋์์: rosservice call /mavros/set_stream_rate 1 200 1
(0 200 1, 0 10 1, 0 10 0 ๋ฑ์ผ๋ก๋ ์๋)
C++์์:
#include <mavros_msgs/StreamRate.h>
ros::ServiceClient stream_rate_client;
ros::NodeHandle nh;
stream_rate_client = nh.serviceClient<mavros_msgs::StreamRate>("/mavros/set_stream_rate");
mavros_msgs::StreamRate streamRate;
streamRate.request.stream_id = 1;
streamRate.request.message_rate = 200;
streamRate.request.on_off = true;
stream_rate_client.call(streamRate);
์ด๋ค ์ค ์ด๋ ๊ฒ๋ ํจ๊ณผ๊ฐ ์์์ผ๋ฉฐ ์ด์ ๋ฅผ ๋ชจ๋ฆ ๋๋ค. ๋ํ ๋๋ฒ๊น ์ ์งํํ๋ ๋ฐฉ๋ฒ์ ๋ชจ๋ฆ ๋๋ค.
๋ง๋ธ๋ก์ค: 0.25.1
ROS: ํค๋คํฑ
์ฐ๋ถํฌ: 16.04
[ ] ์๋ํ์ผ๋ฟ
[ x ] PX4
๋ฒ์ : 1.7.3
$ rosrun mavros mavros_node _fcu_url:=tcp://127.0.0.1:5760 _system_id:=2
[ INFO] [1527166997.534725386]: FCU URL: tcp://127.0.0.1:5760
[ INFO] [1527166997.538179020]: tcp0: Server address: 127.0.0.1:5760
[ INFO] [1527166997.538583530]: GCS URL: udp://@
[ INFO] [1527166997.538851787]: udp1: Bind address: 0.0.0.0:14555
[ INFO] [1527166997.582075509]: Plugin 3dr_radio loaded
[ INFO] [1527166997.587216072]: Plugin 3dr_radio initialized
[ INFO] [1527166997.587433590]: Plugin actuator_control loaded
[ INFO] [1527166997.602908470]: Plugin actuator_control initialized
[ INFO] [1527166997.608098772]: Plugin adsb loaded
[ INFO] [1527166997.624933409]: Plugin adsb initialized
[ INFO] [1527166997.625174728]: Plugin altitude loaded
[ INFO] [1527166997.629202189]: Plugin altitude initialized
[ INFO] [1527166997.629439220]: Plugin cam_imu_sync loaded
[ INFO] [1527166997.631736889]: Plugin cam_imu_sync initialized
[ INFO] [1527166997.632005870]: Plugin command loaded
[ INFO] [1527166997.656271690]: Plugin command initialized
[ INFO] [1527166997.656518171]: Plugin debug_value loaded
[ INFO] [1527166997.679747716]: Plugin debug_value initialized
[ INFO] [1527166997.680021635]: Plugin distance_sensor loaded
[ WARN] [1527166997.684616922]: DS: plugin not configured!
[ INFO] [1527166997.684730488]: Plugin distance_sensor initialized
[ INFO] [1527166997.684972781]: Plugin fake_gps loaded
[ INFO] [1527166997.728127889]: Plugin fake_gps initialized
[ INFO] [1527166997.728480748]: Plugin ftp loaded
[ INFO] [1527166997.758929019]: Plugin ftp initialized
[ INFO] [1527166997.759219651]: Plugin global_position loaded
[ INFO] [1527166997.818296662]: Plugin global_position initialized
[ INFO] [1527166997.818588156]: Plugin hil loaded
[ INFO] [1527166997.882781780]: Plugin hil initialized
[ INFO] [1527166997.883048549]: Plugin home_position loaded
[ INFO] [1527166997.903052314]: Plugin home_position initialized
[ INFO] [1527166997.903807895]: Plugin imu loaded
[ INFO] [1527166997.933612538]: Plugin imu initialized
[ INFO] [1527166997.933850257]: Plugin local_position loaded
[ INFO] [1527166997.952751657]: Plugin local_position initialized
[ INFO] [1527166997.953008414]: Plugin manual_control loaded
[ INFO] [1527166997.968141910]: Plugin manual_control initialized
[ INFO] [1527166997.968481980]: Plugin mocap_pose_estimate loaded
[ INFO] [1527166997.984059425]: Plugin mocap_pose_estimate initialized
[ INFO] [1527166997.984304531]: Plugin obstacle_distance loaded
[ INFO] [1527166997.997733823]: Plugin obstacle_distance initialized
[ INFO] [1527166997.998059268]: Plugin odom loaded
[ INFO] [1527166998.013623175]: Plugin odom initialized
[ INFO] [1527166998.013984083]: Plugin param loaded
[ INFO] [1527166998.023299249]: Plugin param initialized
[ INFO] [1527166998.023588331]: Plugin px4flow loaded
[ INFO] [1527166998.042473344]: Plugin px4flow initialized
[ INFO] [1527166998.042727126]: Plugin rangefinder loaded
[ INFO] [1527166998.045338152]: Plugin rangefinder initialized
[ INFO] [1527166998.045632059]: Plugin rc_io loaded
[ INFO] [1527166998.062006661]: Plugin rc_io initialized
[ INFO] [1527166998.062537311]: Plugin safety_area loaded
[ INFO] [1527166998.083768132]: Plugin safety_area initialized
[ INFO] [1527166998.084033551]: Plugin setpoint_accel loaded
[ INFO] [1527166998.097458792]: Plugin setpoint_accel initialized
[ INFO] [1527166998.097776863]: Plugin setpoint_attitude loaded
[ INFO] [1527166998.135016088]: Plugin setpoint_attitude initialized
[ INFO] [1527166998.135395910]: Plugin setpoint_position loaded
[ INFO] [1527166998.199004407]: Plugin setpoint_position initialized
[ INFO] [1527166998.199288389]: Plugin setpoint_raw loaded
[ INFO] [1527166998.247947782]: Plugin setpoint_raw initialized
[ INFO] [1527166998.248232176]: Plugin setpoint_velocity loaded
[ INFO] [1527166998.276827990]: Plugin setpoint_velocity initialized
[ INFO] [1527166998.277159823]: Plugin sys_status loaded
[ INFO] [1527166998.313704869]: Plugin sys_status initialized
[ INFO] [1527166998.314003064]: Plugin sys_time loaded
[ INFO] [1527166998.325176275]: TM: Timesync mode: MAVLINK
[ INFO] [1527166998.327852553]: Plugin sys_time initialized
[ INFO] [1527166998.328095534]: Plugin vfr_hud loaded
[ INFO] [1527166998.330919928]: Plugin vfr_hud initialized
[ INFO] [1527166998.331147359]: Plugin vibration loaded
[ INFO] [1527166998.335247172]: Plugin vibration initialized
[ INFO] [1527166998.335499616]: Plugin vision_pose_estimate loaded
[ INFO] [1527166998.369932485]: Plugin vision_pose_estimate initialized
[ INFO] [1527166998.370189466]: Plugin vision_speed_estimate loaded
[ INFO] [1527166998.383793912]: Plugin vision_speed_estimate initialized
[ INFO] [1527166998.384077019]: Plugin waypoint loaded
[ INFO] [1527166998.403765289]: Plugin waypoint initialized
[ INFO] [1527166998.404032333]: Plugin wind_estimation loaded
[ INFO] [1527166998.406681323]: Plugin wind_estimation initialized
[ INFO] [1527166998.406813352]: Built-in SIMD instructions: SSE, SSE2
[ INFO] [1527166998.406874153]: Built-in MAVLink package version: 2018.5.5
[ INFO] [1527166998.406924542]: Known MAVLink dialects: common ardupilotmega ASLUAV autoquad icarous matrixpilot paparazzi slugs standard uAvionix ualberta
[ INFO] [1527166998.406979693]: MAVROS started. MY ID 2.240, TARGET ID 1.1
[ INFO] [1527166998.408225699]: IMU: Attitude quaternion IMU detected!
[ INFO] [1527166998.408474430]: IMU: High resolution IMU detected!
[ INFO] [1527166999.200899783]: CON: Got HEARTBEAT, connected. FCU: PX4 Autopilot
[ INFO] [1527166999.204518434]: IMU: High resolution IMU detected!
[ INFO] [1527166999.204972608]: IMU: Attitude quaternion IMU detected!
[ INFO] [1527167000.246101700]: VER: 1.1: Capabilities 0x00000000000024ef
[ INFO] [1527167000.246399932]: VER: 1.1: Flight software: 01060500 (00000000B9C7CD26)
[ INFO] [1527167000.246488372]: VER: 1.1: Middleware software: 01060500 (00000000B9C7CD26)
[ INFO] [1527167000.246534273]: VER: 1.1: OS software: 000000c0 (0000000000000000)
[ INFO] [1527167000.246748090]: VER: 1.1: Board hardware: 0000a4a7
[ INFO] [1527167000.246867818]: VER: 1.1: VID/PID: 0525:a4a7
[ INFO] [1527167000.246908907]: VER: 1.1: UID: 3335511839343335
[ WARN] [1527167000.247388481]: CMD: Unexpected command 520, result 0
[ WARN] [1527167013.218527443]: PR: request param #452 timeout, retries left 2, and 1 params still missing
[ INFO] [1527167014.241870430]: WP: mission received
[ WARN] [1527167359.915573803]: CMD: Unexpected command 200, result 4
[ WARN] [1527168934.267074100]: TM: Clock skew detected (-763580720.440153122 s). Hard syncing clocks.
header:
seq: 3416
stamp:
secs: 1527169233
nsecs: 907997653
frame_id: ''
status:
-
level: 0
name: "mavros: FCU connection"
message: "connected"
hardware_id: "tcp://127.0.0.1:5760"
values:
-
key: "Received packets:"
value: "60196"
-
key: "Dropped packets:"
value: "0"
-
key: "Buffer overruns:"
value: "0"
-
key: "Parse errors:"
value: "0"
-
key: "Rx sequence number:"
value: "159"
-
key: "Tx sequence number:"
value: "39"
-
key: "Rx total bytes:"
value: "147758546"
-
key: "Tx total bytes:"
value: "580048"
-
key: "Rx speed:"
value: "100808.000000"
-
key: "Tx speed:"
value: "390.000000"
-
level: 0
name: "mavros: GPS"
message: "3D fix"
hardware_id: "tcp://127.0.0.1:5760"
values:
-
key: "Satellites visible"
value: "8"
-
key: "Fix type"
value: "3"
-
key: "EPH (m)"
value: "1.24"
-
key: "EPV (m)"
value: "2.39"
-
level: 0
name: "mavros: Heartbeat"
message: "Normal"
hardware_id: "tcp://127.0.0.1:5760"
values:
-
key: "Heartbeats since startup"
value: "2229"
-
key: "Frequency (Hz)"
value: "0.962947"
-
key: "Vehicle type"
value: "Quadrotor"
-
key: "Autopilot type"
value: "PX4 Autopilot"
-
key: "Mode"
value: "AUTO.RTL"
-
key: "System status"
value: "Standby"
-
level: 0
name: "mavros: System"
message: "Normal"
hardware_id: "tcp://127.0.0.1:5760"
values:
-
key: "Sensor present"
value: "0x00000000"
-
key: "Sensor enabled"
value: "0x00000000"
-
key: "Sensor helth"
value: "0x00000000"
-
key: "CPU Load (%)"
value: "77.8"
-
key: "Drop rate (%)"
value: "0.0"
-
key: "Errors comm"
value: "0"
-
key: "Errors count #1"
value: "0"
-
key: "Errors count #2"
value: "0"
-
key: "Errors count #3"
value: "0"
-
key: "Errors count #4"
value: "0"
-
level: 0
name: "mavros: Battery"
message: "Normal"
hardware_id: "tcp://127.0.0.1:5760"
values:
-
key: "Voltage"
value: "17.91"
-
key: "Current"
value: "0.0"
-
key: "Remaining"
value: "100.0"
---
WARNING: mavros/target_system_id not set. Used default value: 1
WARNING: mavros/target_component_id not set. Used default value: 1
NOTE: Target parameters may be unset, but that may be result of incorrect --mavros-ns option.Double check results!
OK. I got messages from 1:1.
---
Received 9307 messages, from 1 addresses
sys:comp list of messages
1:1 0, 1, 2, 266, 140, 141, 147, 24, 30, 31, 32, 33, 36, 74, 76, 83, 85, 87, 230, 231, 105, 111, 241, 242, 245
PX4๋ ํด๋น ๋ฉ์์ง๋ฅผ ์ง์ํ์ง ์์ต๋๋ค. ๋ฉ์์ง ์๋๋ฅผ ๊ตฌ์ฑํ๋ ๋ฐฉ๋ฒ์ ๋ํ PX4 ํ์จ์ด ๋ฌธ์๋ฅผ ์ฝ์ผ์ญ์์ค.
PX4๋ MAV_CMD_GET_MESSAGE_INTERVAL ๋ฐ MAV_CMD_SET_MESSAGE_INTERVAL์ ์ง์ํฉ๋๋ค.
https://mavlink.io/en/messages/common.html#MAV_CMD_GET_MESSAGE_INTERVAL
์, ํ์ง๋ง ํด๋น iface๋ ์์ง mavros์์ ์ง์๋์ง ์์ต๋๋ค(์๋ก์ด rosapi ํธ์ถ ํ์).
@vooon , @dagar ์ฌ๋ฐ๋ฅธ ๋ฐฉํฅ์
rosrun mavros mavcmd int 511 105 10000 100 1 1 1 1
์๋ํ์ง๋ง ์ฑ๊ณตํ์ง ๋ชปํ์ต๋๋ค. ์ซ์๋ ๋ค์์ ๋ํ๋
๋๋ค.
511: https://mavlink.io/en/messages/common.html#MAV_CMD_GET_MESSAGE_INTERVAL
105: https://github.com/PX4/Firmware/blob/4453e4201b7a245cff52beeb38a293161aea4c48/Tools/mavlink_px4.py#L506
1 1 1 1: ๋ฌด์ธ๊ฐ๋ฅผ ์ฑ์์ผ ํ์ต๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด mavcmd int: error: too few arguments
๋ฐ์์ต๋๋ค.
๋ํ PX4 mavlink stream -u 14556 -s HIGHRES_IMU -r 100
์ mavlink ๋ชจ๋๋ก IMU ์๋๋ฅผ ๋์์ต๋๋ค. rostopic hz /mavros/imu/data
ํ์ธํ ๋ ์ฌ์ ํ ์๊ธ์ 50์ ์ ์งํฉ๋๋ค. /mavros/imu/data
์ฃผ์ ๋ฅผ ๋ ๋นจ๋ฆฌ ๊ฒ์ํ๊ธฐ ์ํด mavros ์ธ๋ถ์์ ์ํํด์ผ ํ๋ ์์
์ ๋ฌด์์
๋๊น?
๊ธด mavcmd long 511 105 1000 0 0 0 0 0 0
๋ช
๋ น๋ ์๋ํ์ญ์์ค.
๋น ๋ฅธ ๋ต๋ณ ๊ฐ์ฌํฉ๋๋ค @vooon
rosrun mavros mavcmd long 511 105 1000 0 0 0 0 0
์๋ํ์ง๋ง ๋ถํํ๋ ๋น์จ์ ์ฌ์ ํ โโ50์
๋๋ค.
/mavros/imu/data
์ ๊ฒ์ํ๋๋ก mavros๋ฅผ ํธ๋ฆฌ๊ฑฐํ๋ ๊ฒ์ ๋ฌด์์
๋๊น? ๋ฐ์ดํฐ๊ฐ ์ฌ๊ธฐ handle_attitude_quaternion
ํจ์์ ๊ฒ์๋์ด ์์ง๋ง ํด๋น ํจ์๋ฅผ ํธ๋ฆฌ๊ฑฐํ๋ ํญ๋ชฉ์ ์ฐพ์ง ๋ชปํ์ต๋๋ค.
@szebedy Aero๊ฐ UDP๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ์คํธ๋ฆฌ๋ฐํ๊ณ ์์ต๋๊น? ์ด๋ค ํฌํธ๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๊น? ๋์ TCP๋ฅผ ํตํด ์ฐ๊ฒฐํ๋ ์ด์ ๋ ๋ฌด์์
๋๊น? mavlink stream -u 14556 -s HIGHRES_IMU -r 100
๋ Aero๊ฐ ์ค์ ๋ก ํด๋น UDP ํฌํธ๋ฅผ ํตํด ์คํธ๋ฆฌ๋ฐํ๋ ๊ฒฝ์ฐ์๋ง ์๋ํฉ๋๋ค.
/mavros/imu/data
์ ๊ฒ์ํ๋๋ก mavros๋ฅผ ํธ๋ฆฌ๊ฑฐํ๋ ๊ฒ์ ๋ฌด์์ ๋๊น? ๋ฐ์ดํฐ๊ฐ ์ฌ๊ธฐhandle_attitude_quaternion
ํจ์์ ๊ฒ์๋์ด ์์ง๋ง ํด๋น ํจ์๋ฅผ ํธ๋ฆฌ๊ฑฐํ๋ ํญ๋ชฉ์ ์ฐพ์ง ๋ชปํ์ต๋๋ค.
MAVROS๊ฐ ์คํธ๋ฆผ์์ HIGHRES_IMU
msg๋ฅผ ์์ ํ ๋ ํธ๋ฆฌ๊ฑฐ๋ฉ๋๋ค.
@TSC21 ์์ฃผ ์ข์
๋ฐ๋ผ์ mavlink stream -d /dev/ttyS1 -s HIGHRES_IMU -r 100
์๋ํ์ง๋ง ๋ถํํ๋ ์คํธ๋ฆฌ๋ฐ ์๋๋ 50์ผ๋ก ์ ์ง๋ฉ๋๋ค.
PX4์์ data_raw
๋ HIGHRES_IMU์ ๊ฐ์ ์๋๋ฅผ ๊ฐ์ ธ์ผ ํ์ง๋ง data
๋ ATTITUDE_QUATERNION
์ hr-imu๋ฅผ ๊ฒฐํฉํ๋ฏ๋ก ์๋๋ ๋ณ๊ฒฝํด ๋ณด์ญ์์ค.
์ปดํจํ ๋ณด๋์๋ ์ง๋ ฌ ํฌํธ๋ฅผ ๋คํธ์ํฌ ์์ผ(ํฌํธ 5760)์ผ๋ก ๋ ธ์ถํ๋ ํ๋ก์๊ฐ ์์ต๋๋ค.
๊ทธ๋ฌ๋ฉด ๋ฌธ์ ๊ฐ ํ๋ก์์ ์์ ์ ์์ต๋๋ค. ๋ณ๋ชฉ ํ์์ด ๋ฐ์ํ์ง ์์์ ๋ณด์ฅํฉ๋๋ค.
@vooon (๊ทธ๋ฆฌ๊ณ @TSC21) ์ ๋ง ๊ฐ์ฌํฉ๋๋ค. ์ฑ๊ณตํ์ต๋๋ค!!! ๋ฐ๋ผ์ ํ์ฌ ์๋ฃจ์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
mavlink stream -d /dev/ttyS1 -s HIGHRES_IMU -r 100
mavlink stream -d /dev/ttyS1 -s ATTITUDE_QUATERNION -r 100
rosrun mavros mavcmd long 511 105 10000 0 0 0 0 0
rosrun mavros mavcmd long 511 31 10000 0 0 0 0 0
ROS ์์ ํ์ผ(๋๋ C++ ROS ๋ ธ๋)์ ์ด ๋ ๋ช ๋ น์ ํฌํจํ ์ ์์ต๋๊น?
ROS ์์ ํ์ผ(๋๋ C++ ROS ๋ ธ๋)์ ์ด ๋ ๋ช ๋ น์ ํฌํจํ ์ ์์ต๋๊น?
๊ทธ๋ฅ ๋ฃ์ด:
mavlink stream -d /dev/ttyS1 -s HIGHRES_IMU -r 100
๋๋
mavlink stream -d /dev/ttyS1 -s ATTITUDE_QUATERNION -r 100
https://github.com/PX4/Firmware/blob/master/ROMFS/px4fmu_common/init.d/4070_aerofc ์์ Aero ๋ณด๋๋ฅผ ๋ค์ ํ๋ก๊ทธ๋๋ฐํ๊ณ ์ฌ๋ถํ
ํ์ญ์์ค. ROS ๋ช
๋ น์ ์ฌ์ฉํ ํ์๋ ์์ต๋๋ค.
๊ทธ๋ผ ๋ซ์ต๋๋ค.
๋ํ ๋จ์ง ์ธ๊ธ:
mavros/imu/data_raw
์์ ๋ฐ์ดํฐ๋ฅผ ์ป์ผ๋ ค๋ฉด HIGHRES_IMU
์คํธ๋ฆผ์ ๋๋ฆฌ๋ฉด ๋ฉ๋๋ค. mavros/imu/data
(ํํฐ๋ง๋ ํ๋)์์ ์ป์ผ๋ ค๋ฉด ATTITUDE_QUATERNION
์์ ๋๋ฆฌ๋ฉด ๋ฉ๋๋ค. ๋ ๊ฐ์ง ๋ชจ๋์ ๋ํด ์ฆ๊ฐํ ํ์๋ ์์ต๋๋ค(์ด์ ์์ด ๋์ญํญ ์ฌ์ฉ๋์ ์ฆ๊ฐ์ํค๋ฏ๋ก). ์ฒ์๋ถํฐ ์๋ชป๋ ์ฃผ์ ์์ ๋ฐ์ดํฐ๋ฅผ ์ป์์ ๋ฟ์
๋๋ค. rostopic hz /mavros/imu/data_raw
๋ฅผ ๋ฐํํ๋ค๋ฉด ๋ฐ์ดํฐ ์๋๊ฐ ์ฆ๊ฐํ์ ๊ฒ์
๋๋ค.
๊ทธ๋ฅ ๋ฃ์ด:
mavlink ์คํธ๋ฆผ -d /dev/ttyS1 -s HIGHRES_IMU -r 100
๋๋
mavlink ์คํธ๋ฆผ -d /dev/ttyS1 -s ATTITUDE_QUATERNION -r 100
https://github.com/PX4/Firmware/blob/master/ROMFS/px4fmu_common/init.d/4070_aerofc ์์ Aero ๋ณด๋๋ฅผ ๋ค์ ํ๋ก๊ทธ๋๋ฐํ๊ณ ์ฌ๋ถํ ํ์ญ์์ค. ROS ๋ช ๋ น์ ์ฌ์ฉํ ํ์๋ ์์ต๋๋ค.
๊ทธ๋ผ ๋ซ์ต๋๋ค.
@TSC21 ์ด์งธ์์ธ์ง ํจ๊ณผ๊ฐ ์์์ต๋๋ค. ์ด์ ๋ ๋ฌด์์
๋๊น? https://github.com/PX4/Firmware/blob/master/ROMFS/px4fmu_common/init.d/4070_aerofc ์ ๋์ mavlink stream -d /dev/ttyS1 -s ATTITUDE_QUATERNION -r 100
๋ฅผ ์ฝ์
ํ๊ณ make aerofc-v1_default
๋ก ๋ง๋ ๋ค์ ์
๋ก๋ํ์ต๋๋ค. make aerofc-v1_default upload
. ์
๋ก๋๊ฐ ์๋ฃ๋๊ณ ์ฌ๋ถํ
๋์ง๋ง mavros/imu/data
์ ๋น์จ์ 50์ผ๋ก ์ ์ง๋ฉ๋๋ค.
@TSC21 ์์ด๋ก๋ extras.txt
์คํฌ๋ฆฝํธ ๊ธฐ๋ฅ์ด ์๋์? Pixhawk๋ ์คํธ๋ฆผ์ ์ค์ ํ ์ ์๋๋ก SD ์นด๋์์ extras.txt ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ ์ ์์ต๋๋ค.
๊ทธ๋ ์ง ์์ต๋๋ค. https://github.com/intel-aero/meta-intel-aero/issues/286
@TSC21 ์ด์งธ์์ธ์ง ํจ๊ณผ๊ฐ ์์์ต๋๋ค. ์ด์ ๋ ๋ฌด์์ ๋๊น? make aerofc๋ก ๋น๋๋ https://github.com/PX4/Firmware/blob/master/ROMFS/px4fmu_common/init.d/4070_aerofc ๋์ mavlink stream -d /dev/ttyS1 -s ATTITUDE_QUATERNION -r 100 ์ ์ฝ์ ํ์ต๋๋ค. -v1_default ๋ค์ make aerofc-v1_default ์ ๋ก๋๋ก ์ ๋ก๋ํฉ๋๋ค. ์ ๋ก๋๊ฐ ์๋ฃ๋๊ณ ์ฌ๋ถํ ๋์ง๋ง mavros/imu/data์ ์๋๋ 50์ผ๋ก ์ ์ง๋ฉ๋๋ค.
๋ค์ ์ค๋ก ๋ฎ์ด์ธ ์ ์์ต๋๋ค. https://github.com/PX4/Firmware/blob/ab279d5fe9e014cec26add8a56bd5e676152b1c5/src/modules/mavlink/mavlink_main.cpp#L2042
ํ์ฌ ์์
์๋ฃจ์
์ configure_stream("ATTITUDE_QUATERNION", 50.0f);
๋ฅผ configure_stream("ATTITUDE_QUATERNION", 100.0f);
๋ก ๋ฐ๊พผ ๋ค์ ๋น๋ํ๊ณ ์
๋ก๋ํ๋ ๊ฒ์
๋๋ค.