REGBOT version 3

From Rsewiki
(Difference between revisions)
Jump to: navigation, search
(Teensy pin assingnment)
(Status and observations)
Line 24: Line 24:
 
* IMU interface OK
 
* IMU interface OK
 
* start button OK
 
* start button OK
* servo 1 implemented (400hz, 10 bit PWM control) - and tested - +/- 512 gives about 90 deg, not 180 as expected (bad Hobby King servo for purpose). But modifies motor-PWM, this will work only on new (version 4) motherboard.
+
* servo 1-k implemented (400hz, 10 bit PWM control) - and tested - +/- 512 gives about 90 deg, not 180 as expected (bad Hobby King servo for purpose). But modifies motor-PWM, this works only on new (version 3.5) motherboard.
 
* current sensor OK
 
* current sensor OK
 
* motor control OK
 
* motor control OK
Line 35: Line 35:
 
==== Software robot side (Teensy) ====
 
==== Software robot side (Teensy) ====
  
* control implement (tick) - partially tested (velocity seems OK)
+
* control implement test of edge, wall and forward distance controllers - partially tested (velocity, heading, position and balance seems OK)
  
* include servo control (and software castor wheel) in mission possibility
+
* wifi - is OK after a reboot,but stops after a few minutes, if no wifi client is attached.
  
servo1=1.6,servo3=1.1, d2=0: d1 = 1, A1>1
+
* AD converter for "servo" 4 and 5 (when not output pins) is not implemented, and should be available as continue condition in missions.
d2 = 1: time=0.01
+
d2 = 0: time=0.01
+
 
+
* heartbeat (and the rest) seems to stop after a while (minutes) - seen twice
+
 
+
* wifi - will not restart when a connection is active - how to do a HUP on a client
+
 
+
* wifi fail to start at power on (need edit + apply in client)
+
 
+
* new wifi send sends one part of string only, and then some garbage - every other time - error in wifi8266.cpp
+
  
 
==== Software client side ====
 
==== Software client side ====
  
* wifi implement - partially OK - open-close-open fails, some messages too long (> 62 bytes) for one send. This msg overflow is seen too often.
+
Servo debug page is a mess with edit/apply/cancel, as most actions work instantaneously.
  
* load of log/help is not working
+
Tab order is a mess.
  
* reimplement data transfer to get data on demand - not pushing - works OK on USB connection - a few messagetypes are too long for wifi, limit or disable on wifi connection.
+
Help in control dialogue is missing - should refer to wiki page.
  
 
== Teensy pin assingnment ==
 
== Teensy pin assingnment ==

Revision as of 18:31, 30 October 2016

Contents

Aim

  • maintain frame,
  • Avoid too many satellite PCB's,
  • more powerfull 5V,
  • fix PCB errors on version 2,
  • new servo interface plug


Status and observations

REGBOT 36 LIV has new board (and new battery/charger mount (3D print)

  • Line sensor low power pin (Teensy pin 25) now working. Pin 25 set to output in main.cpp (line 125), and pulsed in main.cpp (line 425 and 466). Line estimate seems OK (after calibration) - line sensor calibration missing in regbot.ini.
  • Space for charger is too small - hits line sensor 6-pin plug on main-board and hits line sensor 90 deg 10-pin plug in other end. Should lower buttom plates by e.g. 4mm.
  • Battery power (XT60) should have small plug on main PCB, so that XT60 plug can be fixed to battery/charger mount.
  • IR sensor power control is OK. IR sensor calibration missing in regbot.ini.
  • Power off by "halt" and by too low battery voltage is OK, back on by "power" button in both cases OK. Power off (by halt), no USB, then power on by power button is OK.
  • wifi (on board part) is working (client is not) - tested with putty (not on SSID=device)
  • Servo plog (teensy pin 25 (PWM) is also line sensor pin, teensy pin 5 (PWM) is also SPI interface, teensy pin A14 (analog out), teensy pin 18 (also linesensor power pin).
  • IMU interface OK
  • start button OK
  • servo 1-k implemented (400hz, 10 bit PWM control) - and tested - +/- 512 gives about 90 deg, not 180 as expected (bad Hobby King servo for purpose). But modifies motor-PWM, this works only on new (version 3.5) motherboard.
  • current sensor OK
  • motor control OK
  • start button OK


Missing/bugs

Software robot side (Teensy)

  • control implement test of edge, wall and forward distance controllers - partially tested (velocity, heading, position and balance seems OK)
  • wifi - is OK after a reboot,but stops after a few minutes, if no wifi client is attached.
  • AD converter for "servo" 4 and 5 (when not output pins) is not implemented, and should be available as continue condition in missions.

Software client side

Servo debug page is a mess with edit/apply/cancel, as most actions work instantaneously.

Tab order is a mess.

Help in control dialogue is missing - should refer to wiki page.

Teensy pin assingnment

GND side

  • 0 serial RX (wifi)
  • 1 serial TX (wifi)
  • 2 motor left direction
  • 3 motor left PWM
  • 4 motor left D2 enable -> flyttes til right motor PWM
  • 5 servo pin 3 (PWM) - og 2nd SPI CS pin (4) (see also teensy pin 24)
  • 6 Start button
  • 7 motor slew ctrl -> flyttes til motor enable D2
  • 8 motor right direction
  • 9 motor right PWM -> flyttes til servo PWM (servo pin 4)
  • 10 motor right D2 enable - > flyttes til servo PWM (servo pin 6)
  • 11 SPI MOSI
  • 12 SPI MOSI

Vin side

  • 13 heart beat LED og SPI clock
  • 14 (A0) IR dist 2
  • 15 (A1) IR dist 1
  • 16 I2C SCL
  • 17 I2C SDA
  • 18 Line sensor LED power (skal ikke også til servo pin)
  • 19 encoder left B
  • 20 encoder left A
  • 21 encoder right B
  • 22 encoder right A
  • 23 (A9)battery voltage

End

  • A14 (analog out) servo pin 5 (i/o, ikke PWM) - for switch in or signal out (mostly)

2nd row

  • A10 motor current left
  • A11 motor current right

button side

  • A12 line sensor pin 3
  • A13 line sensor pin 4
  • A15 line sensor pin 5
  • A16 line sensor pin 6
  • A17 line sensor pin 7
  • A18 line sensor pin 8
  • A19 line sensor pin 9
  • A20 line sensor pin 10
  • 24 SPI CE (SPI CS pin (pin 3))
  • 25 Line sensor LED HIGH
  • 32 IR power on
  • 33 Robot power on

Message to-from regbot

PID control message

All controlls is formatted with 26 values, and looks like this example (balance)

cbal 1 -3 0 1 9999.99 1 0 1 1 1 0.029 0.001 0 1 1 1 0.1 5 1 0 1 0 1 1 1 99.99

The indivitual numbers are - after the controller keyword (here 'cbal'):

 1 cbal 1 // use (any part of controller)
 2     -3 // Kp
 3      0 1 9999.99 1 // integrator (use, tau, limit, (and_zero - not implemented))
 7      0 1 1 // lead forward (use, zero, pole)
 10     1 0.029 0.001 // lead backward (use, zero, pole)
 13     0 1 1 // pre-filt (use, zero, pole)
 16     1 0.1 5 1 // post integrator (use, tau, limit, and_zero)
 20     0 1 // feed forward (use, Kff)
 22     0 1 1 // feed forward pole-zero (use zero pole)
 25     1 99.99 // output limit (use, limit)
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox