Skip to main content

Bossix (Mainboard) v2

ACHTUNG!!!

Nicht am Peaktech netzteil benutzen!!!

  • Notiz für Spätere Entwicklungen: Dioden zur Limitierung der Eingangsspannung einbauen

Das Mainboard Steuert den gesammten Roboter.

mainboard_v2_block_diagram.drawio.svg

Komponenten

Stromversorgung

Die Stromversorgung wird durch einen 6S LiPo Akku bereitgestellt. Ein Taster wird mit einer toggle schaltung zum an- und ausschalten verwendet. In diese Schaltung sind auch ein Softstart und eine 10A Sicherung integriert. Die 18V bis 25.2V vom Akku werden von zwei Buck Convertern in 12V und 5V umgewandelt. Die 5V werden ebenfalls nochmal mit einem Linearregulator in 3.3V umgewandelt.

Haupt uController

Der haupt Microcontroller ist für die Kommunikation mit dem Server, das Ausschalten des Roboters, die IMU, den Buzzer, die Lichtschranke, den Dribbler und die UI zuständig. Dafür wird ein RP2040 verwendet. Über USB kann der Controller konfiguriert und debugged werden.

2.4GHz Funk

Für die Kommunikation mit dem Server wird der SX1280 Transceiver zusammen mit dem SKY66112 Leistungsverstärker verwendet. Mit dem Verstärker ist eine ausgangsleistung von bis zu 200mW möglich. Die antenne wird mit einem u.fl Stecker verbunden, was viel freiheit in der Platzierung dieser bietet.

Inertial Measurement Unit (IMU)

Die IMU misst die Beschleunigung sowie die Rotation des Roboters. Diese Daten können dann genutzt werden, um die Position des Roboters zu bestimmen. Die IMU ist in der Mitte des Roboters verbaut. Die IMU ist über SPI mit dem haupt uController verbunden.

Neben uController

Der zweite Microcontroller ist ebenfalls ein RP2040. Dieser ist jedoch für die Steuerung der Motoren und die Bedienung des Kickers zuständig.

Pins

gpio #MaincontrollerMotorcontroller
0RF CRXKicker Trigger 1
1RF CPSKicker Trigger 2
2RF CTXKicker DAC0
3RF ResetKicker DAC1
4RF MISOKicker DAC2
5RF CSKicker DAC3
6RF SCKKicker DAC4
7RF MOSIKicker DAC5
8RF BUSYKicker DAC6
9UI LEDKicker DAC7
10UI SDAKicker DAC8
11UI SCLKicker DAC9
12Not ShutdownKicker Not Fault
13Power SwitchKicker Not Done
14RF DIO1 (V2.1 only)Kicker Clear
15Ball senseKicker Charge
16TXTX
17RXRX
18CTSCTS
19RTSRTS
20Dribbler-
21Buzzer-
22IMU Int2ESC CS1
23IMU Int1ESC CS3
24IMU MISOESC CS0
25IMU CSESC CS2
26IMU SCKESC SCK
27IMU MOSIESC MOSI
28Battery CurrentESC MISO
29Battery VoltageKicker Voltage

Patches

V2.0

Bei der dual 3.3V Zener sind pin 1 und 3 vertauscht.

Beim nächsten mal drauf achten, dass der sx1280 die DO pins für interrupt lines nutzt. Also mindestens einen an den uController anschließen.

Am sky66122 ist fälschlicherweise der CHL pin low, weshalb dauerhaft der low power transmit modus aktiv ist. Eigentlich sollte CHL high sein, um dauerhaft high power trans mit zu machen, was in einer output power von 200mW resultieren würde.

Es ist beim nächsten mal darauf zu achten für buck converter spulen mit shield zu nutzen.

Durchtrennungen auf der Oberen LageDurchtrennungen auf der Unteren LageExtra Verbindungen
mainboardv2-top-cuts.pngmainboardv2-bottom-cuts.pngmainboardv2-top-patches.png

Alle Versionen

Der OpAmp zur Strommessung ist falschrum beschaltet. Durch das Positive feedback wird dauerhaft die Maximalspannung (3.3V) ausgegeben.

D101 wird weggelassen. Dadurch wird der Soft Start ausgeschaltet. Das ist nötig, da der Power MOSFET den Slow Start nicht aushält.
C101 wird durch 1uF und R101, R102 und R103 werden durch 1MR ersetzt. Das erzeugt einen deutlich langsameren Soft-Start, wodurch das Mosfet nicht so extrem belastet wird.

Die Kicker schaltung schaltet zu schnell. Deshalb schaltet sich der Kicker charge controller ab und geht in einen fehler zustand. Um das zu beheben wird R521 durch einen 1KOhm und R511 durch einen 100kOhm Widerstand ersetzt. Damit ist zumindest ein laden bis 200V möglich.

Bilder

mainboard-2023-front.png
mainboard-2023-back.png