Frank
09.06.2006, 10:02
RN-JoyPad - JoyPad für Controllerboards
Ein neues kleines Projekt. Eigentlich nix besonderes, aber manchmal sind die kleinen Dinge gerade das wichtigste. Im Grunde eine kleine Platine die zwei JoyPads und zwei Taster aufnimmt und über einen Standard-Datenportstecker (RN-Definition) leicht an Controllerboards angeschlossen werden kann. Durch die kleien Platine mit Befestigungslöchern lassen sich solche JoyPads besser in Gehäuse oder auf einer Chassis befestigen, was sonst sehr schwierig ist.
Also ein ideales Steuerboard für alles was in verschiedene Richtungen gesteuert werden muss. Die JoyPads sind natürlich analog ausgeführt, lassen sich somit in alle Richtungen bewegen. Über 4 analoge Ports lassen sich die Richtungen ganz einfach per Software mit einem Controllerboard abfragen. Der Anschluß ist besonders einfach, es müssen nur 4 analoge und 4 digitale Signaleingänge frei sein.
Anwendungsbeispiele:
Steuerung eines Roboters mit Schwenkkamera
Aufbau einer Fernsteuerung (z.B. mit RN-Funk)
Kamerasteuerungen
Neigungssensor und Beschleunigungssensor für alle Richtungen (falls man Gewichte am Hebel befestigt)
usw.
Es gibt wie immer die Einzelplatine oder einen kompletten Bausatz bei Robotikhardware.de (http://www.robotikhardware.de)
Die Doku ist in kürze auch hier im Downloadbereich.
https://www.roboternetz.de/phpBB2/album_pic.php?pic_id=986
https://www.roboternetz.de/phpBB2/album_pic.php?pic_id=985
Beispielprogramm:
'######################################
'rnyoypad.BAS
'für
'RoboterNetz Board RN-CONTROL ab Version 1.1
'Das beliebte RN-Controllerboard
'
' Achtung:
' Diese Demo ist mit Bascom Compiler 1.11.8.3 getestet
'
'
'Aufgabe:
'Ein angeschlossenes JoyPad (2 Joysticks, Bausatz RN-Joypad)
'wird getestet und es wird demonstriert wie man analoge
'x und y Positionen der Steuerhebel sowie Taster abfragt
'Autor: Frank
'Infos:http://www.Roboternetz.de oder robotikhardware.de
'######################################
' ---------------RN-Control übliche ------------------
$regfile = "m32def.dat" ' bei Mega 16 $regfile = "m16def.dat"
$framesize = 32
$swstack = 32
$hwstack = 32
$crystal = 16000000 'Quarzfrequenz
$baud = 9600
Sound Portd.7 , 400 , 450 'BEEP bei RN-Control
Sound Portd.7 , 400 , 250 'BEEP bei RN-Control
Sound Portd.7 , 400 , 450 'BEEP bei RN-Control
' ---------------------------------------------------
Print
Print "**** RN-CONTROL testet das JoyStickboard RN-JoyPad"
Print
Config Porta = Input
Config Adc = Single , Prescaler = Auto
Dim Joy1x As Word 'Variablen für Positionen der JoyPad Steuerknüppel
Dim Joy1y As Word
Dim Joy2x As Word
Dim Joy2y As Word
Start Adc
Do
Joy1y = Getadc(0)
Joy1x = Getadc(1)
Print "Joystick 1 Position: X=" ; Joy1x ; " Y=" ; Joy1y
Joy2y = Getadc(2)
Joy2x = Getadc(3)
Print "Joystick 2 Position: X=" ; Joy2x ; " Y=" ; Joy2y
If Pina.4 = 0 Then Print "Joystick 1 wird runter gedrueckt!"
If Pina.5 = 0 Then Print "Joystick 2 wird runter gedrueckt!"
If Pina.6 = 0 Then Print "Taster 1 wird gedrueckt!"
If Pina.7 = 0 Then Print "Taster 2 wird gedrueckt!"
Wait 2
Loop
End
Ein neues kleines Projekt. Eigentlich nix besonderes, aber manchmal sind die kleinen Dinge gerade das wichtigste. Im Grunde eine kleine Platine die zwei JoyPads und zwei Taster aufnimmt und über einen Standard-Datenportstecker (RN-Definition) leicht an Controllerboards angeschlossen werden kann. Durch die kleien Platine mit Befestigungslöchern lassen sich solche JoyPads besser in Gehäuse oder auf einer Chassis befestigen, was sonst sehr schwierig ist.
Also ein ideales Steuerboard für alles was in verschiedene Richtungen gesteuert werden muss. Die JoyPads sind natürlich analog ausgeführt, lassen sich somit in alle Richtungen bewegen. Über 4 analoge Ports lassen sich die Richtungen ganz einfach per Software mit einem Controllerboard abfragen. Der Anschluß ist besonders einfach, es müssen nur 4 analoge und 4 digitale Signaleingänge frei sein.
Anwendungsbeispiele:
Steuerung eines Roboters mit Schwenkkamera
Aufbau einer Fernsteuerung (z.B. mit RN-Funk)
Kamerasteuerungen
Neigungssensor und Beschleunigungssensor für alle Richtungen (falls man Gewichte am Hebel befestigt)
usw.
Es gibt wie immer die Einzelplatine oder einen kompletten Bausatz bei Robotikhardware.de (http://www.robotikhardware.de)
Die Doku ist in kürze auch hier im Downloadbereich.
https://www.roboternetz.de/phpBB2/album_pic.php?pic_id=986
https://www.roboternetz.de/phpBB2/album_pic.php?pic_id=985
Beispielprogramm:
'######################################
'rnyoypad.BAS
'für
'RoboterNetz Board RN-CONTROL ab Version 1.1
'Das beliebte RN-Controllerboard
'
' Achtung:
' Diese Demo ist mit Bascom Compiler 1.11.8.3 getestet
'
'
'Aufgabe:
'Ein angeschlossenes JoyPad (2 Joysticks, Bausatz RN-Joypad)
'wird getestet und es wird demonstriert wie man analoge
'x und y Positionen der Steuerhebel sowie Taster abfragt
'Autor: Frank
'Infos:http://www.Roboternetz.de oder robotikhardware.de
'######################################
' ---------------RN-Control übliche ------------------
$regfile = "m32def.dat" ' bei Mega 16 $regfile = "m16def.dat"
$framesize = 32
$swstack = 32
$hwstack = 32
$crystal = 16000000 'Quarzfrequenz
$baud = 9600
Sound Portd.7 , 400 , 450 'BEEP bei RN-Control
Sound Portd.7 , 400 , 250 'BEEP bei RN-Control
Sound Portd.7 , 400 , 450 'BEEP bei RN-Control
' ---------------------------------------------------
Print "**** RN-CONTROL testet das JoyStickboard RN-JoyPad"
Config Porta = Input
Config Adc = Single , Prescaler = Auto
Dim Joy1x As Word 'Variablen für Positionen der JoyPad Steuerknüppel
Dim Joy1y As Word
Dim Joy2x As Word
Dim Joy2y As Word
Start Adc
Do
Joy1y = Getadc(0)
Joy1x = Getadc(1)
Print "Joystick 1 Position: X=" ; Joy1x ; " Y=" ; Joy1y
Joy2y = Getadc(2)
Joy2x = Getadc(3)
Print "Joystick 2 Position: X=" ; Joy2x ; " Y=" ; Joy2y
If Pina.4 = 0 Then Print "Joystick 1 wird runter gedrueckt!"
If Pina.5 = 0 Then Print "Joystick 2 wird runter gedrueckt!"
If Pina.6 = 0 Then Print "Taster 1 wird gedrueckt!"
If Pina.7 = 0 Then Print "Taster 2 wird gedrueckt!"
Wait 2
Loop
End