Difference between revisions of "Conrad Probot (Deutsch)"
(Created page with "{{i18n|Conrad Probot}} == Conrad Probot ==") |
(→Conrad Probot) |
||
Line 1: | Line 1: | ||
{{i18n|Conrad Probot}} | {{i18n|Conrad Probot}} | ||
− | == Conrad Probot == | + | {{i18n|Conrad Probot}} |
+ | |||
+ | Der Support für den [https://www.conrad.de/de/beratung/markenshops/c-control/c-robotics.html Probot von Conrad] ist noch experimentell! | ||
+ | |||
+ | [[File:Conrad-probot.jpg|thumb|right]] | ||
+ | |||
+ | == make menuconfig == | ||
+ | |||
+ | 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_(Deutsch) | 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_(Deutsch) | Control6]] gibt es auch auf der Seite für [[PIN_Commands_(Deutsch) | PIN_Commands]] | ||
+ | |||
+ | === Beispiel für ein [[Control6_(Deutsch) | Control6]] mit Named Pin=== | ||
+ | * Script unter control6/control6.src | ||
+ | * control6 muss aktiviert sein! | ||
+ | * [[Named PIN_(Deutsch) | 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_(Deutsch) | I2C]] Bus | ||
+ | * Serielle Schnittstelle für [[ECMD_(Deutsch) | ECMD]] (TTL Logik, daher Pegelwandler benutzen) | ||
+ | * 4 Rote LEDs auf der Main Unit | ||
+ | * Helligkeitssensoren mit [[ADC_(Deutsch) | ADC]] | ||
+ | * Buzzer (Piezo Lautsprecher - sehr leise) getestet mit Melodyausgabe aus dem [[Sound_(Deutsch) | Sound]]-Modul | ||
+ | |||
+ | === Drive Unit === | ||
+ | * Motoren via H-Bridge angesteuert (Vor, Zurück, Rechts, Links) | ||
+ | * Line Sensor mit [[ADC_(Deutsch) | ADC]] | ||
+ | |||
+ | == Bilder == | ||
+ | |||
+ | <gallery> | ||
+ | Conrad-probot.jpg | ||
+ | Habo_probot_drive_unit_top.jpg | ||
+ | Habo_probot_drive_unit_top_bottom.jpg | ||
+ | Habo_probot_front_view2.jpg | ||
+ | Habo_probot_front_view3.jpg | ||
+ | Habo_probot_main%2Bdrive_unit.jpg | ||
+ | Habo_probot_main_unitbottom_mit_programmieradapter.jpg | ||
+ | Habo_probot_main_unit_CPU_modul_ohne_Deckel.jpg | ||
+ | Habo_probot_main_unit_top_mit_programmieradapter.jpg | ||
+ | Habo_probot_mit_RFM12_modul.jpg | ||
+ | Habo_probot_selfmade_breadboard.jpg | ||
+ | Habo_rfm12_probot_modul1.jpg | ||
+ | Habo_rfm12_probot_modul2.jpg | ||
+ | Habo_probot_stackable.jpg | ||
+ | Habo_probot_advanced.jpg | ||
+ | Habo_probot_lights_on.jpg | ||
+ | </gallery> | ||
+ | |||
+ | [[Category:Hardware]] |
Revision as of 16:11, 30 January 2016
Der Support für den Probot von Conrad ist noch experimentell!
Contents
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