robotik für lehr- und entwicklungszwecke zwischenpräsentation
TRANSCRIPT
![Page 1: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/1.jpg)
Robotik für Lehr- und Entwicklungszwecke
Zwischenpräsentation
![Page 2: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/2.jpg)
Grundaufbau - Konzept Komponentenauswahl
◦ Controller-Board◦ USB-I2C-Converter
Programmierung – Libraries◦ Grundsystem◦ Sprachen und Systeme◦ I2C◦ MCK
Fortschritt
Inhalt
![Page 3: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/3.jpg)
Grundaufbau - Konzept
![Page 4: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/4.jpg)
Entwicklung eines universellen Robotiksystems zur Verwendung und Weiterentwicklung im Schulbetrieb◦ OS-unabhängig
flexibles, erweiterbares System hardwaretechnisch einfach zu bedienen Ausreichende Dokumentation
Ziel
![Page 5: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/5.jpg)
Module◦ I2C-Bausteine, Sensoren/Aktoren
Verbindung◦ USB-I2C-Converter, ev. Direktverbindung
Zwischenplatine◦ Aktorensteuerung (Motoren u.a.)
DriveSystem◦ Eigene Energieversorgung, auswechselbar
Konzept
![Page 6: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/6.jpg)
Komponentenauswahl
I2C-USB-Converter: i2c-tiny-usb ([email protected])Controller-Board: Make Controller Kit (makingthings.com)
![Page 7: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/7.jpg)
Kleine Größe – großer Komponentenumfang Eigenbau: Zeitkomponente kritisch Viele Schnittstellen
◦ Aktoren/Sensoren◦ Programmiersprachen
Hohe Leistung◦ Atmel AT91SAM7X256 Mikrocontroller
32-bit ARM7 core 256K Flash 64K SRAM Bis zu 55MHZ/48MIPS
Hoher Preis◦ Versand aus den USA
Make Controller Kit - MCK
![Page 8: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/8.jpg)
Einfache Handhabung – universelle Basis◦ LibUSB
Library zum USB-Handling In C, entwickelt für Linux, Windows Port existiert
Direktes Übersetzten in I2C-Signale◦ Kein simulierter COM-Port
Geringer Preis, jedoch Eigenbau
i2c-tiny-usb
![Page 9: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/9.jpg)
Programmierung – Libraries
![Page 10: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/10.jpg)
Bestehende Funktionen (z.B. von LibUSB) tlw. sehr komplex Kapselung
Basis-Funktionen erstellt◦ Einfacher, jedoch ev. eingeschränkte
Funktionalität
Bestehende Funktionen beibehalten Für erfahrende User
Grundsystem
![Page 11: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/11.jpg)
Sprachen◦ C/C++◦ Java◦ C#
Systeme◦ Windows◦ Linux
Sprachen und Systeme
![Page 12: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/12.jpg)
C#◦ Baut auf der MCK Basic C# Lib auf. (Nur Windows)
Java◦ Baut auf NetUtil auf. (Plattformunabhängig)
Es sollen einsteigerfreundliche Bibliotheken erstellt werden
In C werden Samples erstellt◦ Kompilierbar auf Windows und Linux
MCK
![Page 13: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/13.jpg)
MCK – Example-StrukturPort wählen Port.USB oder Port.LAN
Verbindung öffnen open()
Verbindung testen isReady()
Ticket generieren generateTicket()
Kommando und Kommandotyp setzen Setter/Getter möglich
Kommando ausführen 1. executeBlocking() -> warten, bis das Kommando beendet ist (nur für GETTER)2. executeNonBlocking() -> manuell den Status abfragen (für GETTER und SETTER)
Bei Getter Kommandos das Ergebnis auslesen getValue()
Speicher den das Ticket belegt freigeben Dispose()
Verbindung schließen close()
Speicher den das MakingThings Objekt belegt freigeben
Dispose()
![Page 14: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/14.jpg)
Bauen auf LibUSB auf OS-Unabhängig
Einsteigerfunktionen sollen bereitgestellt werden◦ Kapselung der bestehenden LibUSB-Funktionen
C#-Lib: In DLL zusammengefasste C-Funktionen aufrufen
Java-Lib: JNI
I2C
![Page 15: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/15.jpg)
i2c_get_multiple_converters◦ Liefert die Adressen der an-
geschlossenen Converter
Wenn nur ein Converteri2c_init_win()
I2C – Example-Strukturi2c_get_multiple_convertersi2c_get_multiple_converters
i2c_init_win_multiplei2c_init_win_multiple
i2c_tiny_usb_get_funci2c_tiny_usb_get_func
i2c_lookup_addressi2c_lookup_address
i2c_write_basici2c_write_basic
i2c_read_basici2c_read_basic
i2c_close_wini2c_close_win
![Page 16: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/16.jpg)
Fortschritt
![Page 17: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/17.jpg)
Hardwareplanung und Bau Programmierung
◦ MCK Windows – C Windows – C# Windows – Java – Basisfunktionalitäten
◦ I2C Windows – C Linux – C Windows – C# - Grundfunktionen
Done
![Page 18: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/18.jpg)
Programmierung◦ I2C
Windows – C# (Kosmetik- und erweiterte Funktionen) Windows – Java Linux – Java
◦ MCK Windows C# (Kosmetik- und erweiterte Funktionen) Windows – Java (Kosmetik- und erweiterte Funktionen) Linux – Java (Test) Linux/Windows – C (Mehr Samples)
Testsysteme◦ Auswahl erweitern
I2C-Converter Neubau
ToDo
![Page 19: Robotik für Lehr- und Entwicklungszwecke Zwischenpräsentation](https://reader035.vdocuments.site/reader035/viewer/2022070310/55204d7049795902118c2d19/html5/thumbnails/19.jpg)
Danke