Difference between revisions of "Sail-by-wire"

From wiki.bastelbude.grade.de
Jump to: navigation, search
(physical layer)
(signalK)
Line 69: Line 69:
 
** feedback
 
** feedback
 
*** /vessels/<RegExp>/steering/rudderAngle
 
*** /vessels/<RegExp>/steering/rudderAngle
 +
*** /vessels/<RegExp>/steering/[controllerState]
 +
**** [overTemp]
 +
**** [overCurrent]
 +
**** [underVoltage]
 +
**** ....
 
* gear
 
* gear
 
** control
 
** control
Line 74: Line 79:
 
** feedback
 
** feedback
 
*** /vessels/<RegExp>/propulsion/<RegExp>/transmission/gear
 
*** /vessels/<RegExp>/propulsion/<RegExp>/transmission/gear
* propulsion
+
* engine
 
** control
 
** control
 
*** /vessels/<RegExp>/propulsion/<RegExp>/revolutions[Target]
 
*** /vessels/<RegExp>/propulsion/<RegExp>/revolutions[Target]

Revision as of 08:41, 14 April 2020

aim

retrofit engine (propulsion), gearbox (gear) and steering (rudder) with controller based on Sean's work

hardware

  • ESP32 fully featured Microcontroller (< EUR 10,-)
  • IBT-2 BTS7960 based Double-H-Bridge (< EUR 10,-)
  • sensors:
    • angular:
      • 10k Ohm linear pot (as suggested by Sean)
      • off-the-shelf rudder angle sensor 0-190 Ohm
      • rotary encoder
    • position switches:
      • end stop
      • forward/ neutral / reverse
    • current sense:
      • BTS7960 feature
    • over temprature:
      • BTS7960 feature
    • voltage sense
  • power-drive:
    • windshield wiper motor
    • hydraulic pump
    • linear drive
    • ...

commercial products

  • ZF Pod Drives
    • DeviceNet ?
  • Volvo† IPS und Volvo Aquamatic
    • J1939 ?
  • Teleflex Optimus 360 Systems
    • DeviceNet ?
  • Yanmar VC10 und JC10 (Joystick) Control Systeme)
    • DebiceNet ?

toDo

  • explore communication protocols

communication

conceptual layer

remote control via

physical layer

  • on device via web-server
  • wifi
  • ethernet
  • can-bus
    • nmea2000
    • ...
  • serial
    • Sean's pyPilot
  • bluetooth
  • infrared
  • radio 10kHz

protocol layer

[...] = porposed feature

signalK

  • rudder
    • control
      • /vessels/<RegExp>/steering/rudderAngleTarget
    • feedback
      • /vessels/<RegExp>/steering/rudderAngle
      • /vessels/<RegExp>/steering/[controllerState]
        • [overTemp]
        • [overCurrent]
        • [underVoltage]
        • ....
  • gear
    • control
      • /vessels/<RegExp>/propulsion/<RegExp>/transmission/gear[Target]
    • feedback
      • /vessels/<RegExp>/propulsion/<RegExp>/transmission/gear
  • engine
    • control
      • /vessels/<RegExp>/propulsion/<RegExp>/revolutions[Target]
      • /vessels/<RegExp>/propulsion/<RegExp>/engineLoad[Target]
    • feedback
      • /vessels/<RegExp>/propulsion/<RegExp>/revolutions
      • /vessels/<RegExp>/propulsion/<RegExp>/engineLoad

nmea2000

  • rudder
    • control
      • pgn 127237 Heading/Track Control
    • feedback
      • pgn 127245 Rudder
  • gear
    • control
      • NONE
    • feedback
      • pgn 127493 Transmission Parameters, Dynamic
  • propulsion
    • control
      • NONE
    • feedback
      • pgn 127488 Engine Parameters, Rapid Update
      • pgn 127489 Engine Parameters, Dynamic

Sean's serial

(just a quick shot, details pending ...)

  • rudder
    • control
      • ...
    • feedback
      • rudder_angle_sense
      • port_endstop_pin
      • starboard_endstop_pin
      • controller_temperature
      • motor_temperature
      • voltage_sense
      • shunt_sense_pin
      • low_current_pin
      • clutch_pin
      • led_pin
      • pwm_style_pin
      • ...