Quellcode |
![]() ![]() ![]() |
Hier kann man das eSchie Arduino Programm und die eShie App als git Repositories herunterladen:
Arduino101 Programm.zip Android App.zip Android App.apk
~~~--------------------------------------------------------------------------------~~~
Arduino Programm Entwicklung
Zur programmierung des Genuino 101 wird das Programm Eclipse Arduino IDE von Sloeber verwendet.
Die IDE kann von hier kostenfrei heruntergeladen werden.
Weil der Motor mit dem gelieferten Beispiel von Pollin sehr schwach ist,
untersuchen wir das Beispiel genauer und finden heraus, dass wenn man die
Motorspulen in einer anderen Reihenfolge ansteuert, der Motor ein größeres
Drehmoment hat. Als wir die Ansteuerung ändern kann man nun in beide Richtungen
mit mehr Kaft verfahren. Damit kann der Motor auch schneller fahren und größere
Lasten transportieren. Wenn man die Stepper.h Bibliothek nicht ändern möchte ist
es evtl. auch möglich die Pinbelegung zum Arduino anzupassen, was hier
allerdings nicht weiter verfolgt wird.
Änderungen in der Stepper.h
Arduino Bibliothek
Orginalstand:
switch (thisStep) {
case 0: // 1010
digitalWrite(motor_pin_1, HIGH);
digitalWrite(motor_pin_2, LOW);
digitalWrite(motor_pin_3, HIGH);
digitalWrite(motor_pin_4, LOW);
break;
case 1: // 0110
digitalWrite(motor_pin_1, LOW);
digitalWrite(motor_pin_2, HIGH);
digitalWrite(motor_pin_3, HIGH);
digitalWrite(motor_pin_4, LOW);
break;
case 2: //0101
digitalWrite(motor_pin_1, LOW);
digitalWrite(motor_pin_2, HIGH);
digitalWrite(motor_pin_3, LOW);
digitalWrite(motor_pin_4, HIGH);
break;
case 3: //1001
digitalWrite(motor_pin_1, HIGH);
digitalWrite(motor_pin_2, LOW);
digitalWrite(motor_pin_3, LOW);
digitalWrite(motor_pin_4, HIGH);
break;
}
Änderung:
switch (thisStep) {
case 0: //0110
digitalWrite(motor_pin_1, LOW);
digitalWrite(motor_pin_2, HIGH);
digitalWrite(motor_pin_3, HIGH);
digitalWrite(motor_pin_4, LOW);
break;
case 1: //1100
digitalWrite(motor_pin_1, HIGH);
digitalWrite(motor_pin_2, HIGH);
digitalWrite(motor_pin_3, LOW);
digitalWrite(motor_pin_4, LOW);
break;
case 2: // 1001
digitalWrite(motor_pin_1, HIGH);
digitalWrite(motor_pin_2, LOW);
digitalWrite(motor_pin_3, LOW);
digitalWrite(motor_pin_4, HIGH);
break;
case 3: // 0011
digitalWrite(motor_pin_1, LOW);
digitalWrite(motor_pin_2, LOW);
digitalWrite(motor_pin_3, HIGH);
digitalWrite(motor_pin_4, HIGH);
break;
}
Quellcode der main.cpp des Arduino Programms
Daypower_virtuelle_Endschalter
Bluetooth App Entwicklung
Mit dem Intel XDK wird auf der Basis der Bluetooth App der Gruppe 02_03 Shield_Entwicklung DC Getriebe Motor verwendet. Es werden Knöpfe zum Linkslauf, Rechtslauf, Loop und Stoppen verwendet.
Zum Verbinden mit der eSchie virtueller Endschalter muss man die Service UUID und die Characeristic UUID als 16 Bit Hexasezimalzahl eingeben.
Der Arduino der eSchie vE hat Standardmäßig die Service UUID Hexadezimalzahl : 0xDEAD
und die Characteristic UUID: 0xBEEF