Difference between revisions of "Sail-by-wire"
(→conceptual layer) |
(→discussion) |
||
Line 124: | Line 124: | ||
** pwm_style_pin | ** pwm_style_pin | ||
** ... | ** ... | ||
+ | |||
+ | == roadmap == | ||
+ | === angular measurement === | ||
+ | * 3-wire 10k Ohm linear pot / 2-wire 190 Ohm stock rudder-angle-sensor | ||
+ | ==== schematics ==== | ||
+ | * ... | ||
+ | ==== code ==== | ||
+ | * ... | ||
+ | === position swith readout === | ||
+ | * ... | ||
+ | ==== schematics ==== | ||
+ | * ... | ||
+ | ==== code ==== | ||
+ | * ... | ||
+ | === battery voltage measurement === | ||
+ | * 12V/ 24V | ||
+ | ==== schematics ==== | ||
+ | * ... | ||
+ | ==== code ==== | ||
+ | * ... | ||
+ | === BTS7960 fault reading === | ||
+ | * ... | ||
+ | ==== schematics ==== | ||
+ | * ... | ||
+ | ==== code ==== | ||
+ | * ... | ||
+ | === IBT-2 PWM control === | ||
+ | * ... | ||
+ | ==== schematics ==== | ||
+ | * ... | ||
+ | ==== code ==== | ||
+ | * ... | ||
+ | === ESP32 web-interface === | ||
+ | * gauges | ||
+ | * control-buttons | ||
+ | ==== code ==== | ||
+ | * ... | ||
== discussion == | == discussion == | ||
Line 129: | Line 166: | ||
* https://signalk-dev.slack.com/archives/C02EU366Y/p1586759016008500 (english) | * https://signalk-dev.slack.com/archives/C02EU366Y/p1586759016008500 (english) | ||
* https://www.facebook.com/groups/1666364153609573/permalink/2634203136825665/ (english) | * https://www.facebook.com/groups/1666364153609573/permalink/2634203136825665/ (english) | ||
− | |||
== see also == | == see also == |
Revision as of 12:26, 16 April 2020
Contents
aim
retrofit propulsion (engine, gearbox) 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
- angular:
- 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
channels
remote control via
- autopilot
- pyPilot
- Raymarine EV-2 https://www.raymarine.de/view/index-id=7686.html
- Garmin Steer-by-wire
- remote controller
- Android, iOS, Windows, Linux, ...
- buttons, joysticks, levers, ...
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]
- ....
- control
- gear
- control
- /vessels/<RegExp>/propulsion/<RegExp>/transmission/gear[Target]
- feedback
- /vessels/<RegExp>/propulsion/<RegExp>/transmission/gear
- /vessels/<RegExp>/propulsion/<RegExp>/transmission/[controllerState]
- ...
- control
- 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
- /vessels/<RegExp>/propulsion/<RegExp>/[controllerState]
- ...
- control
nmea2000
- rudder
- control
- pgn 127237 Heading/Track Control
- feedback
- pgn 127245 Rudder
- control
- gear
- control
- NONE
- feedback
- pgn 127493 Transmission Parameters, Dynamic
- control
- engine
- control
- NONE
- feedback
- pgn 127488 Engine Parameters, Rapid Update
- pgn 127489 Engine Parameters, Dynamic
- control
Sean's serial
(just a quick shot, details pending ...)
- rudder
- 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
- ...
roadmap
angular measurement
- 3-wire 10k Ohm linear pot / 2-wire 190 Ohm stock rudder-angle-sensor
schematics
- ...
code
- ...
position swith readout
- ...
schematics
- ...
code
- ...
battery voltage measurement
- 12V/ 24V
schematics
- ...
code
- ...
BTS7960 fault reading
- ...
schematics
- ...
code
- ...
IBT-2 PWM control
- ...
schematics
- ...
code
- ...
ESP32 web-interface
- gauges
- control-buttons
code
- ...
discussion
- https://www.segeln-forum.de/board194-boot-technik/board35-elektrik-und-elektronik/board195-open-boat-projects-org/75477-sail-by-wire-esp32-und-ibt-2/ (german)
- https://signalk-dev.slack.com/archives/C02EU366Y/p1586759016008500 (english)
- https://www.facebook.com/groups/1666364153609573/permalink/2634203136825665/ (english)
see also
IBT-2
- https://github.com/custom-build-robots/Motor-Driver-BTS7960B-H-Bridge (Raspi)
- https://electronics.stackexchange.com/questions/458722/how-to-get-right-voltage-output-with-bts7960b-h-bridge (esp32)
- http://wiki.ardumower.de/index.php?title=Ardumower_Gasoline (Arduino)
- http://www.hessmer.org/blog/2013/12/28/ibt-2-h-bridge-with-arduino/ (Arduino)
- https://forum.allaboutcircuits.com/threads/how-to-connect-h-bridge-for-its-protection-features.141724/ (current sense)
- https://www.mouser.de/ProductDetail/Infineon-Technologies/BTS7960B?qs=wK%252BoHS4yu57Y%2Fa%252Bbuozvew%3D%3D