Elektronik

Morph3dBot circuits

Alle Platinen für das Morph3DBot System haben den selben Formfaktor und werden auf die Basisstruktur montiert. Die Platinen werden untereinander mit einem vierpoligen Kabel verbunden. Über dieses Kabel werden die Platinen mit Strom versorgt und können miteinander kommunizieren.

AT-Mega 328 Platinen Template

Bei der AT-Mega Platine handelt es sich um eine Arduino-IDE-Kompatible Basisplatine. Diese Platine kann sowohl als Hauptplatine im System, als auch als Slave-Platine genutzt werden.

Spannungsversorgung

Auf der Platine ist ein Linearregler verbaut. Er erzeugt aus der Versorgungsspannung des Systems eine stabile 5V Spannungsversorgung für den Controller sowie weitere Peripherie.

Programmierschnittstelle

Auf der Rückseite der Platine befindet sich eine ICSP-Schnittstelle mit Arduino-typischer Belegung

Controller

Herzstück der Platine ist ein AT-Mega-328P Controller von Microchip. Es ist der selbe Controller-Typ, der auch auf Arduino Uno und Nano Boards verbaut ist. Er ist mit einem externen 16MHz Quarz verbunden, um eine stabile Kommunikation zu ermöglichen.

USB-Interface

Ein CP2104 Chip verbindet die UART-Schnittstelle des Controllers mit einer USB-Buchse. Hierüber ist eine Kommunikation mit einem PC und die Programmierung mittels der Arduino-IDE möglich.

Erweiterungsschnittstelle

Auf der Oberseite der Platine sind zwei doppelreihige Buchsenleisten mit jeweils 12-Anschlüssen vorhanden. Hier können +5V, Ground, UART sowie die meisten Pins des Controllers abgegriffen werden. So ist es möglich, eigene Erweiterungen anzuschließen.

ESP32 Board Template

Bei der ESP32 Platine handelt es sich um eine Arduino-IDE-Kompatible Basisplatine. Diese Platine kann sowohl als Hauptplatine im System, als auch als Slave-Platine genutzt werden.

Spannungsversorgung

Auf der Platine sind zwei Linearregler verbaut. Sie erzeugen aus der Versorgungsspannung des Systems stabile 5V und 3,3V Spannungsversorgungen für den Controller sowie weitere Peripherie.

Controller

Herzstück der Platine ist ein ESP32-Wroom Modul von Espressif. Es ist der selbe Controller-Typ, der auch auf Node-MCU Boards verbaut ist. Neben den Interfaces der AT-Mega-Platine bietet das Modul auch WLAN und Bluetooth Konnektivität.

USB-Interface

Ein CP2104 Chip verbindet die UART-Schnittstelle des Controllers mit einer USB-Buchse. Hierüber ist eine Kommunikation mit einem PC und die Programmierung mittels der Arduino-IDE möglich.

Erweiterungsschnittstelle

Auf der Oberseite der Platine sind zwei doppelreihige Buchsenleisten mit jeweils 12-Anschlüssen vorhanden. Hier können +5V, +3,3V, Ground, UART sowie die meisten Pins des Controllers abgegriffen werden. So ist es möglich, eigene Erweiterungen anzuschließen.

Stromversorgungsplatine

Diese Platine darf und muss genau einmal im System verbaut werden!

Diese Platine dient zum Anschluss einer Stromquelle an das Morph3DBot-System. Hierzu dient eine Doppelschraubklemme auf der Oberseite der Platine. Es können Spannungen bis zu 16 Volt eingespeist werden, es wird jedoch mindestens eine Spannung von 7 Volt benötigt.

Außerdem sind auf dieser Platine die Pull-Up-Widerstände für den I2C-Bus verbaut.

HUB Platine

Die HUB-Platine ist ausgestattet mit 8 Steckmöglichkeiten für die Systemkabel.

Mit ihr ist es möglich, mehrere Platinen zu verbinden.

Line-Follower Platine

Die Line-Follower Platine basiert auf dem ATTiny44 Template. Neben der Spannungsversorgung und der Programmierschnittstelle sind 3 Infrarot-Sensoren verbaut. Mit ihrer Hilfe ist es möglich, eine Linie auf dem Boden zu erkennen.

Mikroe-Adapter-Platine

Die Mikroe-Adapter-Platine dient zum Anschluss von “Click-Boards” der Firma Mikroe. Sie basiert auf dem AT-Mega328-Template. Click-Boards können auf die Platine aufgesetzt werden, jedoch muss das Programm des Controllers für das Click-Board angepasst werden. Hierzu kann die Arduino-IDE genutzt und das Programm über die USB-Schnittstelle hochgeladen werden.

Motor- und Servoplatine

Die Motor- und Servoplatine besitzt keinen eigenen Controller. Statt ihrer ist ein I2C-Portexpander PCA9685 von NXP verbaut. Die I2C-Adresse lässt sich über einen DIP-Schalter einstellen.

Die Servo-Anschlüsse sind mit den Ausgängen LED8 bis LED15 verbunden. Über der Anschlussleiste der Servos kann man mit Hilfe eines Jumpers einstellen, ob die Servos mit Systemspannung oder mit 5V versorgt werden sollen.

Auf der Motor-Platine ist außerdem noch ein Motortreiber TB6612FNG von Toshiba verbaut. An ihm können zwei Gleichstrommotoren angeschlossen werden. Die Verbindung zum Portexpander-Chip lautet:

  • TB6612FNG PWM-A = PCA9685 PWM2
  • TB6612FNG A-IN-1 = PCA9685 PWM4
  • TB6612FNG A-IN-2 = PCA9685 PWM3
  • TB6612FNG PWM-B = PCA9685 PWM7
  • TB6612FNG B-IN-1 = PCA9685 PWM6
  • TB6612FNG B-IN-2 = PCA9685 PWM5

Die DC-Motoren werden hierbei duch die Systemspannung versorgt.

Taster Platine

Die TasterPlatine basiert auf dem ATTiny44 Template. Neben der Spannungsversorgung und der Programmierschnittstelle sind 5 Taster verbaut. Mit ihrer Hilfe ist es möglich, Eingaben in das System zu machen.

Ultrasonic Platine

Die Ultrasonic Platine basiert auf dem ATTiny44 Template. Neben der Spannungsversorgung und der Programmierschnittstelle sind 2 Anschlussleisten für einen Ultraschall-Sensor vorhanden.

Es kann nur jeweils ein Anschluss genutzt werden!

Die Belegung der Anschlussleisten lautet:

  • 5V
  • PA3
  • PA7
  • Ground

Es können die meisten 4-Poligen Ultraschallsensoren aus dem Maker-Bedarf genutzt werden, wie z.B. ST1099 oder HC-SR04

TT-Motor-Platine

Die TT-Motor-Platine stellt einen Sonderfall dar: Sie besitzt eine andere Form als die restlichen Morph3DBot-Platinen. Sie ist dazu gedacht, direkt auf TT-Motoren montiert zu werden.

Es ist ein Motortreiber IC A4953 verbaut, der einen Motor mit Systemspannung und einer Stromstärke von bis zu 2 Ampere versorgen kann. Angesteuert wird der Treiber durch einen ATTiny44.

Weiter sind 4 Anschlüsse für Drehencoder des Motors vorhanden. Auch diese Anschlüsse sind mit dem ATTiny verbunden.

Die Platine bestitzt den selben Steckkontakt wie die restlichen Morph3DBot-Platinen, sodass ein Motor mit einer solchen Platine direkt in das System gehangen werden können.

Über eine DIP-Schalter-Reihe lässt sich die I2C-Adresse der Platine einstellen, so dass bis zu 8 Motoren im System verbaut werden können.

ATTiny44 Vorlagen

Das Template für die ATTiny-Platine ist ausgestattet mit einem ATTiny-44 Controller der Firma Microchip. Die Platine selbst stellt keine Funktion dar, sondern dient als Vorlage für eigene Boards.

Spannungsversorgung

Auf der Platine ist ein Linearregler verbaut. Er erzeugt aus der Versorgungsspannung des Systems eine stabile 5V Spannungsversorgung für den Controller sowie weitere Peripherie.

Programmierschnittstelle

Auf der Rückseite der Platine befindet sich eine ICSP-Schnittstelle mit Arduino-typischer Belegung

 

Leeres Board Vorlage

Dieses Template dient als Vorlage für komplett eigene Designs. Sie besitzt einen für das Morph3DBot passenden Form-Faktor. Bereiche auf der Unterseite, die nicht bestückt werden dürfen, sind eingezeichnet.

Spannungsversorgung

Auf der Platine ist ein Linearregler verbaut. Er erzeugt aus der Versorgungsspannung des Systems eine stabile 5V Spannungsversorgung für den Controller sowie weitere Peripherie.