Conrad Probot: Unterschied zwischen den Versionen
Habo (Diskussion | Beiträge) |
Habo (Diskussion | Beiträge) |
||
(12 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Der Support für den [http://www.c-control.de/c-robotics/zubehor_ccrp5/zubehor_ccrp5.html Probot von Conrad] ist noch experimentell! | Der Support für den [http://www.c-control.de/c-robotics/zubehor_ccrp5/zubehor_ccrp5.html Probot von Conrad] ist noch experimentell! | ||
− | [[Bild:conrad-probot.jpg| | + | [[Bild:conrad-probot.jpg|thumb]] |
== make menuconfig == | == make menuconfig == | ||
Zeile 11: | Zeile 11: | ||
* Named and logic state I/O | * Named and logic state I/O | ||
* I2C Master Support (mit I2C Detection Support und I2C EEPROM (24cxx) Support) | * I2C Master Support (mit I2C Detection Support und I2C EEPROM (24cxx) Support) | ||
+ | * ADC Referenzspannung ist AVCC | ||
== Named Pin Konfiguration == | == Named Pin Konfiguration == | ||
− | Hier die passende core/portio/config für [[ | + | Hier die passende core/portio/config für [[Named PIN]] |
* Named Pin muss aktiviert sein! | * Named Pin muss aktiviert sein! | ||
Zeile 28: | Zeile 29: | ||
# PIN | IN/OUT | When active? | Name | # PIN | IN/OUT | When active? | Name | ||
#-----+--------+--------------+---------------- | #-----+--------+--------------+---------------- | ||
− | PB0 | + | PB0 OUTPUT LOW encoder_ir # led for encoder_right AND encoder_left |
− | PB4 | + | PB4 OUTPUT HIGH beep |
− | PB5 | + | PB5 OUTPUT HIGH motor_right |
− | PB6 | + | PB6 OUTPUT HIGH motor_left |
− | PB7 | + | PB7 OUTPUT HIGH motor_enable |
− | + | PC0 OUTPUT LOW led_back_right | |
− | PC0 | + | PC1 OUTPUT LOW led_back_left |
− | PC1 | + | PC2 OUTPUT LOW led_front_right |
− | PC2 | + | PC3 OUTPUT LOW led_front_left |
− | PC3 | + | PC4 OUTPUT LOW led_line_sensor |
− | PC4 | + | PD2 INPUT HIGH tsop |
− | + | PD3 OUTPUT LOW ir_left # together with pwm_ir | |
− | PD2 | + | PD4 OUTPUT LOW ir_right # together with pwm_ir |
− | PD3 | + | PE3 OUTPUT HIGH pwm_ir # pwm for ir_left AND ir_right |
− | PD4 | + | PE4 INPUT HIGH boot #test invert action |
− | + | PE6 INPUT LOW encoder_right # ? | |
− | PE3 | + | PE7 INPUT LOW encoder_left # ? |
− | PE4 | + | PF5 INPUT LOW ldr_right # active? |
− | PE6 | + | PF4 INPUT LOW ldr_left # active? |
− | PE7 | + | PF3 INPUT HIGH mic |
− | + | PF2 INPUT HIGH line_sensor_right | |
− | PF5 | + | PF1 INPUT HIGH line_sensor_left |
− | PF4 | + | PF0 INPUT HIGH ub_measurement |
− | PF3 | ||
− | PF2 | ||
− | PF1 | ||
− | PF0 | ||
− | |||
== Control6 Scripte == | == Control6 Scripte == | ||
Zeile 64: | Zeile 60: | ||
* Script unter control6/control6.src | * Script unter control6/control6.src | ||
* control6 muss aktiviert sein! | * control6 muss aktiviert sein! | ||
− | * [[ | + | * [[Named PIN]] muss aktiviert sein! |
Die 4 LEDs der Hauptplatine blinken alle der Reihe nach | Die 4 LEDs der Hauptplatine blinken alle der Reihe nach | ||
Zeile 83: | Zeile 79: | ||
THREAD_START(blinkrun) | THREAD_START(blinkrun) | ||
+ | == Funktionstüchtig == | ||
+ | Wichtig ist das man AVCC als Referenzspannung für die ADC Eingänge einstellt, sonst geben die Sensoren nichts sinnvolles zurück. | ||
+ | |||
+ | === Main Unit === | ||
+ | * [[I2C]] Bus | ||
+ | * Serielle Schnittstelle für [[ECMD ]](TTL Logik, daher Pegelwandler benutzen) | ||
+ | * 4 Rote LEDs auf der Main Unit | ||
+ | * Helligkeitssensoren mit [[ADC]] | ||
+ | * Buzzer (Piezo Lautsprecher - sehr leise) getestet mit Melodyausgabe aus dem [[Sound]]-Modul | ||
+ | |||
+ | === Drive Unit === | ||
+ | * Motoren via H-Bridge angesteuert (Vor, Zurück, Rechts, Links) | ||
+ | * Line Sensor mit [[ADC]] | ||
+ | |||
+ | == Bilder == | ||
+ | <gallery> | ||
+ | Bild:Conrad-probot.jpg | ||
+ | Bild:Habo_probot_drive_unit_top.jpg | ||
+ | Bild:Habo_probot_drive_unit_top_bottom.jpg | ||
+ | Bild:Habo_probot_front_view2.jpg | ||
+ | Bild:Habo_probot_front_view3.jpg | ||
+ | Bild:Habo_probot_main%2Bdrive_unit.jpg | ||
+ | Bild:Habo_probot_main_unitbottom_mit_programmieradapter.jpg | ||
+ | Bild:Habo_probot_main_unit_CPU_modul_ohne_Deckel.jpg | ||
+ | Bild:Habo_probot_main_unit_top_mit_programmieradapter.jpg | ||
+ | Bild:Habo_probot_mit_RFM12_modul.jpg | ||
+ | Bild:Habo_probot_selfmade_breadboard.jpg | ||
+ | Bild:Habo_rfm12_probot_modul1.jpg | ||
+ | Bild:Habo_rfm12_probot_modul2.jpg | ||
+ | Bild:Habo_probot_stackable.jpg | ||
+ | Bild:Habo_probot_advanced.jpg | ||
+ | Bild:Habo_probot_lights_on.jpg | ||
+ | </gallery> | ||
[[Category:Ethersex]] | [[Category:Ethersex]] |
Aktuelle Version vom 10. Jänner 2010, 00:05 Uhr
Der Support für den Probot von Conrad ist noch experimentell!
Inhaltsverzeichnis
In menuconfig sollte man folgendes einstellen:
- Target MCU: atmega128
- MCU Frequency: 14745000
- Hardware/Periphery Class: (Conrad:Probot
- Named and logic state I/O
- I2C Master Support (mit I2C Detection Support und I2C EEPROM (24cxx) Support)
- ADC Referenzspannung ist AVCC
Named Pin Konfiguration
Hier die passende core/portio/config für Named PIN
- Named Pin muss aktiviert sein!
# # Named Pin Configuration File # # You can assign names to your microcontroller's pins here. # Keep in mind that this names must consist of alphanumeric # characters only! # # Every line starting with a hash sign (#) is a comment. # # # PIN | IN/OUT | When active? | Name #-----+--------+--------------+---------------- PB0 OUTPUT LOW encoder_ir # led for encoder_right AND encoder_left PB4 OUTPUT HIGH beep PB5 OUTPUT HIGH motor_right PB6 OUTPUT HIGH motor_left PB7 OUTPUT HIGH motor_enable PC0 OUTPUT LOW led_back_right PC1 OUTPUT LOW led_back_left PC2 OUTPUT LOW led_front_right PC3 OUTPUT LOW led_front_left PC4 OUTPUT LOW led_line_sensor PD2 INPUT HIGH tsop PD3 OUTPUT LOW ir_left # together with pwm_ir PD4 OUTPUT LOW ir_right # together with pwm_ir PE3 OUTPUT HIGH pwm_ir # pwm for ir_left AND ir_right PE4 INPUT HIGH boot #test invert action PE6 INPUT LOW encoder_right # ? PE7 INPUT LOW encoder_left # ? PF5 INPUT LOW ldr_right # active? PF4 INPUT LOW ldr_left # active? PF3 INPUT HIGH mic PF2 INPUT HIGH line_sensor_right PF1 INPUT HIGH line_sensor_left PF0 INPUT HIGH ub_measurement
Control6 Scripte
Einen Einstieg in Control6 gibt es auch auf der Seite für PIN_Commands
Beispiel für ein Control6 mit Named Pin
- Script unter control6/control6.src
- control6 muss aktiviert sein!
- Named PIN muss aktiviert sein!
Die 4 LEDs der Hauptplatine blinken alle der Reihe nach
THREAD(blinkrun) PIN_SET(led_front_left); PIN_CLEAR(led_back_left); WAIT(1); PIN_SET(led_back_left); PIN_CLEAR(led_back_right); WAIT(1); PIN_SET(led_back_right); PIN_CLEAR(led_front_right); WAIT(1); PIN_SET(led_front_right); PIN_CLEAR(led_front_left); WAIT(1); THREAD_END(blinkrun) THREAD_START(blinkrun)
Funktionstüchtig
Wichtig ist das man AVCC als Referenzspannung für die ADC Eingänge einstellt, sonst geben die Sensoren nichts sinnvolles zurück.
Main Unit
- I2C Bus
- Serielle Schnittstelle für ECMD (TTL Logik, daher Pegelwandler benutzen)
- 4 Rote LEDs auf der Main Unit
- Helligkeitssensoren mit ADC
- Buzzer (Piezo Lautsprecher - sehr leise) getestet mit Melodyausgabe aus dem Sound-Modul
Drive Unit
- Motoren via H-Bridge angesteuert (Vor, Zurück, Rechts, Links)
- Line Sensor mit ADC