Mobile Roboterplattform

Der mobile Roboter ist eine der populärsten Robotorkonstruktionen. Sehr verbreitet sind Sumoroboter, Sportroboter (Fußball, Volleyball usw.), Roboter die Rettungsoperationen simulieren (Feuerbekämpfung, Personen- oder Objektsuche) und viele andere. Es gibt auf der ganzen Welt und in Estland diverse Wettbewerbe für diese Art Roboter, es wurden sogar Standardklassen entwickelt (z. B. Sumoroboter). Alle diese Robotor nutzen eine mobile Plattform, welche zwar zum Teil unterschiedlich konstruiert ist oder andere Eigenschaften besitzt, deren Grundfunktion aber stets die gleiche ist. Diese umfasst die Steuerung von Motoren und einfacher Navigation, inklusive dem Ausweichen vor Objekten und der Bewegung zu einem festgelegten Punkt. Gewöhnlich wird der Hauptfunktion eine spezifische Funktion hinzugefügt, die auf die Voraussetzungen und Möglichkeiten des Projekts abgestimmt ist.

Nachfolgend werden eine Dokumentation eines typischen Projekts für eine mobile Roboterplattform sowie die verschiedenen Projektphasen dargestellt.

Ursprüngliche Aufgabe

Planen und konstruieren Sie eine multifunktionale mobile Roboterplattform mit einfacher Navigationsfunktion unter der Verwendung von HomeLab Komponenten. Die Roboterplattform muss eine einfach zu ändernde operationale Funktion besitzen, wenn sie mit verschiedenen Gadgets ausgerüstet wird:

  • Manipulator
  • Radar
  • Kamera

Der Roboter muss sich in geschlossenen Räumen auf flachen Böden bewegen können.

Voraussetzungen

  • Maximale Abmessung: 20 cm x 20 cm x 20 cm
  • maximales Gewicht: 2 kg
  • Höchstgeschwindigkeit: 0,2 m/s
  • volle Selbstständigkeit

Einschränkung

  • Muss überwiegend aus HomeLab Komponenten bestehen
  • Kostengrenze: 10000 EEK (~630€)

 

Grundlegendes Modell des Systems

Das grundlegende Modell des System wird mit einem Blockdiagramm dargestellt. Es beschreibt die Struktur, das Verhalten und andere wichtige Aspekte des Systems. Als Beispiel ist nachfolgend das hierarchische Modell des System abgebildet.

Model der Systemstruktur

Designlösungen

Für diese Aufgabe hat das Team eine Brainstorming-Methode verwendet und drei vom Konzept völlig unterschiedliche Vorschläge erstellt. Es wurde eine Evaluationsmatrix erstellt und so die optimale Konstruktion gefunden. Der größte Unterschied der drei Lösungen liegt im Bewegungsschema.

Designlösungen

 

Vereinfachte Evaluationsmatrix:

Funktion/Lösung I II III Gewichtungsfaktor
Kosten 3 4 6 0,8
Komplexität im Bau 2 4 7 0,7
Beweglichkeit 4 8 8 0,5
Permittivität 5 8 2 0,3
Anwendbarkeit in Homelab 5 4 5 0,9
Gewicht 5 6 7 0,8
Total (mit Gewichtungsfaktor) 1927 28

Die Evaluationsskala umfasst Werte von 1 bis 10 und der Gewichtungsfaktor liegt zwischen 0 und 1. Der Gewichtungsfaktor wird nach den Anforderungen und Einschränkungen des Systems ausgewählt. So ist beispielsweise Lösung 2 beweglicher auf unebenen Boden, dieses war jedoch nicht in der ursprünglichen Aufgabe gefordert, daher ist der Gewichtungsfaktor niedrig.

Basierend auf der Auswertung, ist die optimale Lösung für die gestellte Aufgabe eine Plattform auf zwei Rädern mit zwei separaten Motoren. Die weitere Arbeit besteht in der Entwicklung der gewählten Lösung in ein reales System.

 

Mechanik

Die Mechanik wurde so einfach wie möglich gehalten, wobei dem Prinzip der Modularität gefolgt wurde. Front- und Heckstossstange sind identische Module. Die Elektronik beseteht aus drei Modulen, welche übereinander platziert werden und mit einfachen Flachbandkabeln verbunden werden. Darüber hinaus wird so sicher gestellt, dass die Module relativ einfach ausgewechselt werden können. Die Motoren entstammen dem HomeLab kit: Motoren mit einem integrierten Drehzahlminderer und Coder, welche direkt mit den Antrieb des Motors verbunden sind. Es wurden Modellflugzeugräder benutzt, da diese sehr leicht und robust sind. Um die Konstruktion zu vereinfachen sind Boden und Dachplatte identisch. Die Platten haben Löcher, damit unterschiedliche Geräte an der Dachplatte angeschlossen werden können. Neben der Elektronik passt auch eine Batterie problemlos zwischen den Platten.

Erstes 3D-Modell des Roboters und Anordnung seiner Komponenten.

Die Stoßstangen des Roboters werden separat geplant und sind mit Berührungs- und Linienfolgesensoren ausgestattet. Die Stoßstange wird aus PCBs hergestellt und verfügt dadurch über Elektrizität. Die Linienfolgesensoren werden direkt auf die Stoßstange der Bodenplatte gelötet. Berührungssensoren (Mikroschalter) werden zwischen den Stoßstangenplatten platziert und mit einem Gummistück an der Front geschützt. Das Gummistück absorbiert den Aufprall und ermöglicht gleichzeitig zu identifizieren, woher der Aufprall kam.

Zeichnung der Stoßstangenplatte

Elektronik

Die Elektronik des Systems ist in einem Prinzipsschema und Schaltplan mit PCB-Aufbau-Plan beschrieben.

Blockdiagramm der elektronischen Komponenten

 

Als Beispiel werden die Schaltpläne der Linienfolgesensoren sowie die dazugehörigen PCB-Aufbau Pläne der Stoßstange des Roboters gezeigt.

Schaltplan der Stoßstangensensoren.
Aufbauplan der Stoßstange.

 

Kontrollsystem

Das Kontrollsystem des Roboters, leitet sich von einem Verhaltensmodell ab und ist an Funktionalität, Anforderungen und Einschränkungen der ursprünglichen Aufgabe angepasst. Aus dem Verhaltensmodell des Systems wird ein spezifisches Kontrollprogramm entworfen, welches wiederum die Basis für den Softwareprogrammcode ist. Alle drei Ebenen (Verhaltensmodell-Algorihtmus-Quellcode) müssen miteinander vereinbar sein.

Algorithmus

Der Algorithmus beschreibt die Kontrolllogik des System und wird als Blockdiagramm dargestellt. Einige Elemente und Beschreibungen der Verhältnisse genügen, um einen einfachen Algorithmus zu erstellen. Wenn der Algorithmus für den Roboter richtig zusammengestellt ist, kann daraus sehr einfach ein Kontrollprogramm erstellt werden. Grundsätzlich werden zwei verschiedene Objekte in einem Algorithmus genutzt: ein Rechteck mit runden Ecken, zur Darstellung einer Aktivität sowie ein kleiner Diamant zur Kontrolle einer Bedingung, gefolgt von einem Start weiterer Aktivitäten, je nach Resultat der Kontrolle.

Bedeutung der im Algorithmus verwendeten Symbole:

SymbolBedeutung01-1
M1linker MotorStoprotiert im Uhrzeigersinnrotiert gegen den Uhrzeigersinn
M2rechter Motorstoprotiert im Uhrzeigersinnrotiert gegen den Uhrzeigersinn
Ferster mittlerer Berührungssensorkein SignalSignal
FRerster rechter Berührungssensorkein signalSignal
FLerster linker Berührungssensorkein signalSignal
dBezug
Statusdiagramm eines Algorithmus

Quellcode

Einfache Navigation

#include <homelab/module/motors.h>
#include <homelab/pin.h>
#include <homelab/delay.h>
 
// Definieren der Stoßstangenpins
pin front      = PIN(C, 0);
pin frontleft  = PIN(C, 1);
pin frontright = PIN(C, 2);
 
//
// Hauptprogramm
//
int main(void)
{
	// Starten von Motor 0 und 1 
	dcmotor_init(0);
	dcmotor_init(1);
 
	// Sensorpins als Inputs
	pin_setup_input_with_pullup(front);
	pin_setup_input_with_pullup(frontleft);
	pin_setup_input_with_pullup(frontright);
 
	// Endlosschleife
	while (true)
	{
		// Motorstart im Uhrzeigersinn 
		dcmotor_drive(0, 1);
		dcmotor_drive(1, 1);
 
		// Kontrolle des mittleren Sensorsignals
		if (pin_get_value(front))
		{
			// Umkehr der Motoren
			dcmotor_drive(0, -1);
			dcmotor_drive(1, -1);
 
			// Pause 1 Sekunde
			sw_delay_ms(1000);
 
			// Start des linken Motors im Uhrzeigersinn  
			dcmotor_drive(0, 1);
 
			// Pause 2 Sekunden
			sw_delay_ms(2000);
		}
 
		// Kontrolle des linken Sensorsignals
		else if (pin_get_value(frontleft))
		{
			// Umkehr des rechten Motors
			dcmotor_drive(1, -1);
 
			// Pause 2 Sekunden
			sw_delay_ms(2000);
		}
 
		// Kontrolle des rechten Sensorsignals
		else if (pin_get_value(frontright))
		{
			// Umkehr des linken Motors 
			dcmotor_drive(0, -1);
 
			// Pause 2 Sekunden
			sw_delay_ms(2000);
		}
	}
}

 

Gebrauchsfertige Lösung

Die in diesem Projekt gebaute Roboterplattform besteht zum größten Teil aus Plastik, außer der Motorbefestigung, welche aus Aluminium hergestellt ist. Die elektrischen Module wurden auf einander platziert, die Batterie liegt lose zwischen den Platten. Die Stoßstangen wurden aus PCB gebaut und schwarz gestrichen. Die Dachplatte des Roboters ist flach und erlaubt das Anbringen verschiedener Geräten. Es wurde ein einfaches Radar installiert, welches aus einem kleinen RC Servomotor und einem Infrarotsensor besteht. Als zweite Lösung wurde ein intelligentes Kameramodul installiert, welches beim Lösen visueller Probleme hilft. Beide Lösungen werden auf den folgenden Bildern vorgestellt. Ein einfacher Manipulator wurde als drittes Gerät getestet, dessen Komponenten mit standard Servomotoren sowie einer seriellen Schnittstelle zur Kontrolle des Antriebs betrieben werden.

Roboter mit Infrarotradar.
Roboter mit intelligentem Kameramodul (CMUcam3).

 

Kostenkalkulation

Die Kostenkalkulation enthält die Kosten für die Komponenten und die Produktion des Roboters

Tabelle der Komponentenkosten

KomponentMarkeAnzahlPreisKosten
MotorM LE149.6.432500.-1000.-
MikrocontrolleruC ATmega1281900.-900.-
MotorenantriebsplatineActuator Board v1.21700.-700.-
Power plateTP1500.-500.-
LinienfolgesensorenLFS QRD1114830.-240.-
BerührungssensorenTS Microswitch825.-200.-
GehäuseblechABS 450.-200.-
PCB Rohteil 250.-100.-
MotorenbefestigungsprofilAl-L 210.-20.-
Reifen60/10 mm 230.-60.-
BatterieNI-MH 9,6 V1350.-350.-
Kabel 1020.-200.-
Muttern 150.-50.-
Weiteres Zubehör 1100.-100.-
Total 4620.-

Kosten in EEK.

Geschätzte Arbeits- und Produktionskosten für ein einzelnes Modell.

ArbeitZeit (h)PreisKosten
Fräsen der Bauteile1300.-300.-
Fräsen der PCBs (Stoßstangen)0,5500.-250.-
Bau des Roboters0,5250.-125.-
Bau der Stoßstangen (löten der Komponenten)1300.-300.-
Programmierarbeit5300.-1500.-
Erstellen der Dokumentation3250.-750.-
Total 11 3225.-

Vorraussichtliche Kosten des Roboters 7845.-

Die Kostenkalkulation des Roboters basiert auf geschätzten, da es sich um ein Lehrprojekt handelt und aus diesem Grund mehr Zeit für die Arbeit und Konstruktion verwendet wird und keine direkte Bezahlung erfolgt. Daher spiegelt der berechnete Arbeitsaufwand keine reale Situationen wider.

Projektmanagement

Das mechatronische System (Roboter) ist in Gruppenarbeit mit straffem Zeitplan und Budget entstanden, und besitzt damit die wichtigsten Eigenschaften eines Projektes. Die Schlüsselaktivitäten des Projekts waren: Erstellung des Zeitplans, Planung und Management der Gruppenarbeit, Überwachung des Budgets sowie Besorgung des Materials, Weitergabe aktueller Berichte an den Leiter, Präsentation sowie Dokumentation des Ergebnisses. Der Projekbericht enthält Angaben zu den Arbeitsgruppen, Terminen von Meetings, dem Projektplan (am besten in einem Gantt Diagramm), der Ressourcenverteilung (inkl. Personalverteilung) sowie zum geplanten und aktuellen Budget. Nachfolgend wird ein einfacher Projektplan als Gantt Diagramm dargestellt.

Projektplan

Fazit

Die Kostenrechnung hat gezeigt, dass die Produktionkosten des Roboters sehr hoch sind, besonders wenn man nur mit einem Exemplar rechnet. Die Kosten blieben jedoch im anfänglich gesetzten Rahmen. Die Prouktionskosten könnten durch Optimierung des Materials und der Komponeten sowie durch gleichzeitige Fertigung mehrerer Roboter wesentlich reduziert werden. Während des Projekts ist deutlich geworden, wie ein mechatronisches System geplant, gebaut und getestet wird.

Am Ende der Arbeit ist eines klar geworden: Damit der Roboter richtig funktioniert, sollte deutlich mehr Zeit zum Testen eingeplant werden, insbesondere für Softwaretests. Unterschiedliche Module funktionieren nicht immer einwandfrei zusammen, auch wenn dieses in einzelnen Experimenten klappt. Dadurch wird deutlich, dass die Integration von Modulen in ein System eine echte Herausforderung darstellt, und hierfür mehr Zeit und Ressourcen eingeplant werden sollten.

Abschließend hoffen wir, dass das Projekt sehr interessant und lehrreich war und einen Einblick in das Design und die Konstruktion von integrierten Systemen geben konnte.

Genutzte Quellen und Materialien

  1. Allgemeines Benutzerhandbuch des HomeLab http://home.roboticlab.eu
  2. Datenblatt des ATmega128
  3. Dudziak, R., Köhn, C., Sell, R., Integrated Systems & Design, TUT Press, 2008
  4. Friendenthal, S., Moore, A., Steiner, A., A Practical Guide to SysML, Elsevier, 2008
  5. Perens, A. Project Management, Külim, 1999
  6. Bräunl, T. Embedded Robotics, Springer-Verlag, 2003
de/projects/wheeled_robot.txt · Last modified: 2020/07/20 09:00 by 127.0.0.1
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0