FMCtrl:Frobomind Actuator

From FroboMind [www.frobomind.org]
Jump to: navigation, search

Frobomind_Actuator Hardware

For this project a FroboMind_Controller is used along with a TR-MM215

Frobomind_Actuator Firmware

Firmware: https://github.com/mikkel-kildemand/Frobomind_Actuator

FroboMind: Row Cleaner Actuator (RowCA) :Protocol

RowCA protocol
The protocol is based on NMEA 0183 [1] over a serial port.
Serial communication
Baudrate: 57600
Frame length: 11 bits (N81)
Max bytes per second: 57600/11 = 5236
Max NMEA strings per second: 57600/11/50 = 104 (assuming a total length of 50 chars)

RowCA Status (PFRHI) transmitted by the RowCA firmware

$PFRHI,hw_version, firmware_version_Major_Version, firmware_version_Minor_Version,reset_cause*CS<cr><lf>
hw_version: The Frobit hardware version
1. RoboCard 2. FroboMind Controller
firmware_version_Major_Version: The Row Cleaner major firmware version
1. RowCA
2. N/A
firmware_version_Minor_Version: The Row Cleaner minor firmware version
1. 2014-08-28
reset_cause: The reason why the RowCA hardware was reset:
0. Power on reset 1. Reset 2. Brown-out reset 4. Watchdog reset (15ms timeout) 5. JTAG reset

This message is transmitted only once after boot.
RowCA Control (PFRAC) accepted by RowCA FW
For CS check
$PFRCT,dist*CS<cr><lf>

If you don’t care for CS
$PFRCT,dist<cr><lf>

Dist: reference to tell the RowCA the desired actuator length in percentage [0-100].

Frobit Status (PFRST) transmitted by RowCA FW

$PFBST,state,act_state,dist,binary_dist,measured_dist,voltage*CS<cr><lf>
state: Normal states
• STATE_OK (1)
Warning states
• STATE_NMEA_WARN(2) At least one nmea packet disregarded due to invalid format/CS since last PFBST message.
Error states
• STATE_WATCHDOG (3) No valid nmea packet received for the past 0.2s. (auto reset)
• STATE_LOW_BAT (5) Battery voltage critically low (auto reset).
• STATE_ACTUATOR_FAULT (6) Determent by TR-MM215
act_state: State of the actuator:
• 1: actuator moving out.
• 2: actuator moving in.
• 3: actuator in place.
• 4: actuator fault.
• 5: actuator in reset state
dist: the distance in percentage set by user.
binary_dist: the distance in binary set by user. (10 bit)
measured_dist1: measured actual distance (10 bit ADC value from port PF1)
measured_dist2: measured actual distance (10 bit ADC value from port PF2)
voltage: Battery voltage (10 bit ADC out from voltage divider to allow external calibration)
Frobit RowCA Parameters (PFRSP) accepted by RowCA FW

$PFRSP,voltage_min*CS<cr><lf>

voltage_min: Battery minimum voltage threshold (10 bit value corresponding to ADC out from voltage divider)

Frobit Communication Parameters (PFRCP) accepted by RowCA FW

$PFBCP,pfbst_interval, pfbct_wd_timeout*CS<cr><lf>
pfbst_interval: Rate of the Frobit Status (PFBST) 1-1000 * [ms] (default 100)
pfbct_wd_timeout: NMEA watchdog timeout (monitoring PFBCT)
0: disable
1-1000 * [ms]

Frobit RowAC RESET command (PFRAR) accepted by RowCA FW

$PFRAR,RESET*CS<cr><lf>
Reset the TR-MM215 MultiMoC actuator control unit.
Be aware that this will course actuator to be fully extended.