Go Down

Topic: Ardu-Megatank, ein Roboterkettenfahrzeug Projektvorstellung (In Progress) (Read 12405 times) previous topic - next topic

Megaionstorm

#15
Jun 20, 2012, 06:56 pm Last Edit: Jul 02, 2013, 04:44 am by Megaionstorm Reason: 1
Die Sprachausgabe

Die Sprachausgabeeinheit besteht aus dem Speakjet, einem TTS256 und einem 2 X 3W 4Ohm Class D Verstärker.
Der Verstärker besitzt einen PAM8803 Amplifier IC.



Hier der Link zur audio Aufzeichnung vom Speakjet:
http://imageshack.us/clip/my-videos/195/hhu.mp4/


Im Anhang befindet sich der I2C-Master und der I2C-Slave Sketch der Sprachausgabeeinheit (Final Status).
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

sth77

Ich finde gut, dass du deine Projekte hier dokumentierst. Dein letztes Posting finde ich aber fehl am Platze, kannst du nicht das Startposting wie ein Inhaltsverzeichnis gestalten, dass man jeweils zum interesseerweckenden Eintrag kommst? Hast du ja schon ganz systematisch geordnet. Und wenn sich etwas neues ergibt, kann man das in der Inhaltsliste ja irgendwie als *!!!NEU!!!* deklarieren. ;)
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

Megaionstorm

#17
Jun 24, 2012, 10:47 pm Last Edit: Jul 01, 2013, 11:09 am by Megaionstorm Reason: 1
Die Uhr, RTC DS1307

Dies ist das Uhrenmodul des Roboters:

Mit der oberen Stiftleiste wird das Modul mit der MCU verbunden, an die untere kann ein weiterer I2C Teilnehmen angeschlossen werden.
An der unteren Stiftleiste ist auch das 'SQUARE-WAVE OUT' (SO) Signal des DS1307 zugänglich, DS ist das Signal des optional einbaubarem Thermometers DS18B20.

Ein Sketch zum stellen der Uhrzeit:
Code: [Select]
/*Reads the value from a Real Time Clock (RTC) DS1307 and displays it in the serial monitor
*
*Created by D. Sjunnesson 1scale1.com d.sjunnesson (at) 1scale1.com
*
*Created with combined information from
*http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1180908809
*http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1191209057
*
*
*Big credit to  mattt (please contact me for a more correct name...) from the Arduino forum
*which has written the main part of the library which I have modified
*
*/

#include <WProgram.h>
#include <Wire.h>
#include <DS1307.h> // written by  mattt on the Arduino forum and modified by D. Sjunnesson

void setup()
{
 Serial.begin(9600);

 RTC.stop();
 RTC.set(DS1307_SEC,0);        //set the seconds
 RTC.set(DS1307_MIN,43);     //set the minutes
 RTC.set(DS1307_HR,0);       //set the hours
 RTC.set(DS1307_DOW,1);       //set the day of the week
 RTC.set(DS1307_DATE,1);       //set the date
 RTC.set(DS1307_MTH,7);        //set the month
 RTC.set(DS1307_YR,12);         //set the year
 RTC.start();
}

void loop()
{
 Serial.print(RTC.get(DS1307_HR,true)); //read the hour and also update all the values by pushing in true
 Serial.print(":");
 Serial.print(RTC.get(DS1307_MIN,false));//read minutes without update (false)
 Serial.print(":");
 Serial.print(RTC.get(DS1307_SEC,false));//read seconds
 Serial.print("      ");                 // some space for a more happy life
 Serial.print(RTC.get(DS1307_DATE,false));//read date
 Serial.print("/");
 Serial.print(RTC.get(DS1307_MTH,false));//read month
 Serial.print("/");
 Serial.print(RTC.get(DS1307_YR,false)); //read year
 Serial.println();
 Wire.beginTransmission(1);
 Wire.send(DS1307_HR);
 Wire.send(DS1307_MIN);
 Wire.endTransmission();  
}


Ein Sketch zur Ausgabe der Uhrzeit über das Terminal:
Code: [Select]
/*Reads the value from a Real Time Clock (RTC) DS1307 and displays it in the serial monitor
*
*Created by D. Sjunnesson 1scale1.com d.sjunnesson (at) 1scale1.com
*
*Created with combined information from
*http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1180908809
*http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1191209057
*
*
*Big credit to  mattt (please contact me for a more correct name...) from the Arduino forum
*which has written the main part of the library which I have modified
*
*/

#include <WProgram.h>
#include <Wire.h>
#include <DS1307.h> // written by  mattt on the Arduino forum and modified by D. Sjunnesson

void setup()
{
 Serial.begin(9600);
}

void loop()
{

 Serial.print(RTC.get(DS1307_HR,true)); //read the hour and also update all the values by pushing in true
 Serial.print(":");
 Serial.print(RTC.get(DS1307_MIN,false));//read minutes without update (false)
 Serial.print(":");
 Serial.print(RTC.get(DS1307_SEC,false));//read seconds
 Serial.print("      ");                 // some space for a more happy life
 Serial.print(RTC.get(DS1307_DATE,false));//read date
 Serial.print("/");
 Serial.print(RTC.get(DS1307_MTH,false));//read month
 Serial.print("/");
 Serial.print(RTC.get(DS1307_YR,false)); //read year
 Serial.println();
 Wire.beginTransmission(1);
 Wire.send(DS1307_HR);
 Wire.send(DS1307_MIN);
 Wire.endTransmission();  
}
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

Megaionstorm

#18
Jun 24, 2012, 11:26 pm Last Edit: Jul 02, 2013, 04:46 am by Megaionstorm Reason: 1
Die I2C Kommunikation

Manche der Bauteile die im Roboter verwendet werden kommunizieren über I2C.
RTC DS1307, ADXL345 Accelerometer und HMC5883L Magnetometer.

Dabei ist jedoch zu beachten das der DS1307 I2C 5V benötigt, der ADXL345 und der HMC5883L hingegen I2C 3,3V.

Hier kommt ein sogenanntes I2C Level Conversion Modul zum Einsatz:


Dieses Modul convertiert die 5V I2C Signale zu 3,3V I2C Signale und umgekehrt !

Pinbelegung:
AVCC connect to 5V system power
ASCL connect to 5V system SCL
ASDA connect to 5V system SDA
AGND connect to 5V system GND
BVCC connect to 3V system power
BSCL connect to 3V system SCL
BSDA connect to 3V systems SDA
BGND connect to 3V system GND
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

Megaionstorm

#19
Jun 26, 2012, 12:37 am Last Edit: Jul 02, 2013, 04:49 am by Megaionstorm Reason: 1
Der Temperatursensor

Im Inneren des Panzers befindet sich zwischen den Spannungsreglern und den Motoren ein DS18B20 Temperatursensor.
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

Megaionstorm

#20
Jun 28, 2012, 02:12 am Last Edit: Jul 02, 2013, 04:50 am by Megaionstorm Reason: 1
Die Programmierung der KI

Durch dieses Modul, welches in die Rückseite des Panzers eingebaut ist, kann der Sanguino über USB programmiert werden:
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

Megaionstorm

#21
Jun 28, 2012, 10:52 pm Last Edit: Jul 01, 2012, 04:30 am by Megaionstorm Reason: 1
Die KI

Sketch kommt noch !
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

Megaionstorm

#22
Jun 29, 2012, 07:49 am Last Edit: Jul 01, 2012, 04:29 am by Megaionstorm Reason: 1
Der Roboterarm

Die silberne Scheibe ist der Rest der vom Panzerturm übrig ist.
Es ist die herausgetrennte Unterseite des Turms.
In der Mitte sieht man den Servohalter für die Aufnahme des Roboterarms !


Der Roboterarm ist noch nicht ganz fertig. Noch nicht !


Die Griffreichweite des Roboterarms beträgt 60cm !

Gesteuert wird er durch einen Pololu Maestro 6-Channel Servocontroller.
http://www.pololu.com/catalog/product/1350


Ein erstes Video des Robotarms in Aktion:
http://imageshack.us/photo/my-images/35/6ry.mp4/

Die Kabel werden natürlich noch mit Kabelbinder gesichert !
Desweiteren wird jedes Servokabel mit einem Ferritkern zur Entstörung versehen.
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

uwefed

VFD sind zwar sehr schön, verbrauchen aber gegenüber LCD mit Hintergrundbeleuchtung sehr viel mehr Strom. (um die 5W)
Grüße Uwe

Megaionstorm

#24
Jul 10, 2012, 09:34 am Last Edit: Jul 10, 2012, 09:33 pm by Megaionstorm Reason: 1
Danke für den wichtigen Hinweis Uwefed,

Werde nun ein LCD mit schwarzem Hintergrund und weißer Schrift verwenden !
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

Megaionstorm

Zukünftige Features

GPS: PA6C GPS + LLC breakout board


Informations Display: ART128064MN37-DIW-R LCD-Display 128X64 ST7565R-Kontroller
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

volvodani

Gibt es schon etwas Konkretes oder ist das noch ein "Vorhaben". Auf dem Blog gibt leider auch keinen Fortschritt.
Gruß
Der Dani
So ist das Leben:
Manchmal bis du das Denkmal, manchmal die Taube!

Megaionstorm

Bin im Moment dabei die Streifenrasterplatinen des Panzers gegen industriell gefertigte auszutauschen.

Anfang August werde ich die nächsten Leiterplatten vom PCB Service anfertigen lassen, Lieferzeit ca. 2 - 3 Wochen.

Der Blog selber wird Ende nächster Woche aktualisiert.

Einfach darauf achten wo schon 'Final Status' steht !

Projektbezogene Verbesserungsvorschläge sind jederzeit gerne willkommen !
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

Go Up