Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
msg [2018/09/25 09:17] – alberto | msg [2023/09/06 11:21] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | =====Communication Protocol===== | ||
+ | \\ | ||
+ | \\ | ||
An adoption of NMEA0183 (National Marine electronics Association) at RS-232 voltage levels is used for the data link between level 1 and level 2. The standard was chosen on the following basis: It has a low power consumption, | An adoption of NMEA0183 (National Marine electronics Association) at RS-232 voltage levels is used for the data link between level 1 and level 2. The standard was chosen on the following basis: It has a low power consumption, | ||
requirements are low, it is human readable, and the signal can be tapped for easy debugging. Level 1 will once per second transmit a request for rudder and commands to the Level 2, in the form of a NMEA message. | requirements are low, it is human readable, and the signal can be tapped for easy debugging. Level 1 will once per second transmit a request for rudder and commands to the Level 2, in the form of a NMEA message. | ||
Line 38: | Line 41: | ||
- FALLB_MODE selects the fallback mode: 0 for //rudder 0//, 1 for //circle//, 2 for // | - FALLB_MODE selects the fallback mode: 0 for //rudder 0//, 1 for //circle//, 2 for // | ||
- MANUAL_CTRL is a boolean: 1 for taking control (manual), 0 for giving control (autopilot). | - MANUAL_CTRL is a boolean: 1 for taking control (manual), 0 for giving control (autopilot). | ||
+ | |||
\\ | \\ | ||
Line 46: | Line 50: | ||
**MSG = CR601 , LEAK , PWR_SETT , LOAD, PANEL1_2 , BATT , COG , SOG , N_SAT , LAT , LONG , Kp , Ki , e , int_e , RUD , THRUST , L1_STATE , FALLB_MODE** | **MSG = CR601 , LEAK , PWR_SETT , LOAD, PANEL1_2 , BATT , COG , SOG , N_SAT , LAT , LONG , Kp , Ki , e , int_e , RUD , THRUST , L1_STATE , FALLB_MODE** | ||
;#; | ;#; | ||
+ | Where:\\ | ||
+ | - CR601 is the msg ID;\\ | ||
+ | - LEAK indicates a leak is happening: 1 for TRUE, 0 for FALSE;\\ | ||
+ | - PWR_SETT indicates the power settings: 6-bits string where 1 means disabled and 0 enabled; \\ | ||
+ | - LOAD is the load power (W);\\ | ||
+ | - PANEL1_2 is the panel 1 and panel 2 power (W);\\ | ||
+ | - BATT is the voltage battery (V); \\ | ||
+ | - COG is the course over ground (°); \\ | ||
+ | - SOG is the speed over ground (kn); \\ | ||
+ | - N_SAT is the satellites number used by the GPS; \\ | ||
+ | - LAT is the latitude; \\ | ||
+ | - LONG is the longitude; \\ | ||
+ | - Kp and Ki are the gains used by the PI fallback autopilot controller; \\ | ||
+ | - e is the error; \\ | ||
+ | - int_e is the integrated error; \\ | ||
+ | - RUD is the rudder computed by the PI fallback autopilot controller; \\ | ||
+ | - THR is the thruster applied to the servo; \\ | ||
+ | - L1_STATE shows the operating state of L1: 1 = normal, 2=fallback, 3=manual; \\ | ||
+ | - FALLB_MODE selects the fallback mode: 0 for //rudder 0//, 1 for //circle//, 2 for // |