Teensy 3.6 Prozessor-Upgrade

Erweiterungen zum c't-Bot

Moderator: Moderatoren Team

Antworten
eax
Friends of Robby
Friends of Robby
Beiträge: 771
Registriert: 18 Jan 2006, 16:16
Wohnort: Karlsruhe

Teensy 3.6 Prozessor-Upgrade

Beitrag von eax » 03 Feb 2019, 02:03

Nachdem das Thema hier schon kurz aufkam, möchte ich euch einen kleinen Überblick geben, wie man einen originalen ct-Bot mit einem Teensy 3.6 Prozessor (anstatt des ATmega) aufrüsten kann. Dazu ist ein kleines Adapter-Board entstanden, dessen Schaltplan hier zu finden ist.


Hinweise
  • Das Adapterboard ist zum Testen und Basteln für eine mögliche Version 2 des ct-Bots entstanden (siehe auch hier), daher enthält es einige rein optionale Features.
  • Zusätzlich zum Prozessor-Upgrade ersetzt es auch den Motortreiber L293D (IC2) des originalen ct-Bots durch einen DRV8835 Motortreiber, der eine deutlich bessere Motorregelung und somit ein deutlich feingranulareres Fahrverhalten ermöglicht.
  • Auf der Hauptplatine des ct-Bots werden IC1 (ATmega) und IC2 (L293D) aus den Sockeln entfernt.
  • Die im Schaltplan des Adapterboards vermerkten IC2 und IC5 stellen nur das Pinout von ATmega und L293D dar, hier werden auf der Unterseite des Adapterboards nur Buchsenleisten eingelötet, die dann auf Stiftverbinder kommen, die in die IC-Sockeln auf der Hauptplatine gesteckt werden (siehe Fotos).
  • Mögliche Bezugsquellen in Deutschland: Teensy 3.6, DRV8835
  • Es kann auch ein Teensy 3.5 verwendet werden.
  • Alle Design-Dateien zum Adapterboard sind hier zu finden.

Hardware

Optionale Komponenten des Adapterboards:
  • Audio-Verstärker auf Basis eines TPA3106D1:
    • U4
    • J14, J15, J16, J17
    • R29, R30
    • C3, C4, C5, C6, C7, C8, C9, C10, C11
  • Teensy-Reset-Schaltung:
    • IC3
  • Batterie-Überwachung:
    • D1
    • R26, R27, R28
  • SWD-Debugger Anschluss:
    • J13, J31, J32
  • I2C-Level-Shifter auf 5V:
    • J2
    • U2, U3
    • R1, R2, R3, R4
  • Maus-Sensor Level-Shifter auf 5V:
    • U1
    • R24, R25
  • Erweiterungs-Pins:
    • J7 (UART 5 - 3.3V)
    • J8 (SPI 0 - 3.3V)
    • J3 (SPI 1 - 3.3V, Reset, Batteriespannung)
    • J2 (I2C 0 - 5V)
    • J5 (I2C 3 - 3.3V)
    • J6, J12 (PWM)
    • J4 (Analog I/O)
    • J9 (BPS Sensoranschluss)
Aus Test- und Experimentiergründen sind einige Verbindungen nicht direkt ausgeführt, sondern über Jumper zu konfigurieren:
  • J1: per Jumper Pin 1 und Pin 2 verbinden, falls originale Beschaltung des Radencoder links (RADL liegt auf Pin 5 / PB4 des ATmega). Ansonsten Pin 2 und Pin 3 verbinden (RADL liegt auf Pin 27 / PC5 des ATmega).
  • J10: per Jumper Pin 1 und Pin 2 verbinden
  • J11: per Jumper Pin 1 und Pin 2 verbinden

Software

Im Repository ctbot-teensy auf GitHub gibt es eine (derzeit noch sehr rudimentäre) Software, um den ct-Bot mit einem Teensy-Board steuern zu können. Details hierzu folgen noch, für einen ersten Start hilft (hoffentlich) die Readme-Datei.


Bilder
Dateianhänge
teensy_apdapter_board_1.jpg
aufgebautes Adapterboard mit Teensy 3.6
teensy_apdapter_board_2.jpg
Rückseite des Adapterboards mit Verbindungsstiftleisten
teensy_apdapter_board_3.jpg
Adapterboard auf ct-Bot

Antworten