PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Fertiges RN-Projekt: Das Universalboard RN-CONTROL



Frank
27.05.2004, 14:42
Inzwischen ein Bestseller unter den RN-Boards!!!

Das beliebte Universal Board RN-CONTROL vom RoboterNetz

Dieses Board wurde speziell zum Experimentieren mit dem Mikrocontroller entworfen. Es eignet sich auch vorzüglich für den Einstieg in die Robotik als auch Mikrocontrollertechnik
Nachdem in der Roboternetz-Community fast jeden Tag nach einem günstigen Einstiegsboard gefragt wurde und das große RNBFRA-Board oft noch etwas zu komplex für erste Einstieg ist, habe ich RN-CONTROL entworfen.

Dabei wurde speziell darauf geachtet das möglichst wenige Bauteile verwendet werden (Kosten- und Zeitersparnis beim Aufbau) aber dennoch echte Leistung geboten wird.



Hier die Features:

Wahlweise 8 oder 16 Mhz Taktfrequenz
Schneller AVR Mega 16 oder Mega 32 Mikrocontroller (bis zu 32K Speicher, 2K Ram und 1K EEPROM), 32 programmierbare I/O Pins,8 AD Ports u.v.m.
Wahlweise auch ATMega 644 verwendbar!
8 Leuchtdioden per DIP-Schalter deaktivierbar und anderen Ports per Steckbrücke beliebig zuzuordnen
alle Portleitungen sind über Stecker nach außen geführt. Die Steckernorm entspricht der Roboternetz-Definition als auch der des Atmel Entwicklungsboards STK500
alle Ports sind zusätzlich über Steckbuchse erreichbar. Ideal zum experimentieren da einfach Drähte (ca. 0,5mm²) eingesteckt werden (kein Löten oder schrauben). So können einfach andere LED´s zugeordnet werden oder ein Steckbrett verbunden werden
Der wichtige Port A (wahlweise 8 digitale oder analoge Ein- o. Ausgänge) ist zusätzlich noch über eine Qualitätssteckklemme mit Hebel herausgeführt
Motortreiber 1 A belastbar - für zwei Getriebemotoren oder 1 Schrittmotor. Dieser kann auch für andere Zwecke (Relaisansteuerung, Lämpchen etc.) genutzt oder einfach entfernt werden
Integrierter programmierbarer Mini-Lautsprecher um Töne auszugeben
1 Reset Taster
5 Taster für beliebige Verwendung. Sie belegen nur einen analogen Port!
5 V Spannungsstabilisierung mit 2 A Belastbarkeit, auch herausgeführt für Erweiterungen
Eingangsspannung gegen Verpolung geschützt
RS232 mit normgerechtem Pegelwandler (MAX232) - PC direkt anschließbar
Batteriespannung kann im Programm abgefragt werden
ISP - Programmierschnittstelle für übliche AVR-Programmieradapter (10polig)
Betriebsspannung wahlweise zwischen 7 und 18V (empfohlen 7 bis 14 V) - wahlweise auch höhere Motorspannung bis 24V möglich)
Sehr kompakt, nur halbes Europaformat nach Roboternetz-Norm (ca. 100x75mm)
I2C-Bus über die zahlreiche Erweiterungsplatinen anschließbar sind (z.B. Sprachausgabe RN-Speak, Relaisboard RN-Relais, Servoboards, LCD´s uvm.)
Programmierbar in zahlreichen Sprachen, z.B. Basic (BASCOM Compiler), C (GCC) , Assembler, Pascal,Avr Studio
Deutsche Doku mit Basic Programmbeispiel http://www.mikrocontroller-elektronik.de/universal-avr-controllerboard-rn-control/
Kein Starter- oder Applikationsboard notwendig - bereits alles integriert




https://www.roboternetz.de/phpBB2/album_pic.php?pic_id=154 (http://www.mikrocontroller-elektronik.de/universal-avr-controllerboard-rn-control/)



http://www.robotikhardware.de/bilder/rncontro2.jpg (http://www.mikrocontroller-elektronik.de/universal-avr-controllerboard-rn-control/)



http://rn-wissen.de/bilder/freiesprojekt.png (http://www.mikrocontroller-elektronik.de/universal-avr-controllerboard-rn-control/)



Ausführliche Anleitung / Schaltplan / Bauteilliste usw:
Jetzt unter http://www.mikrocontroller-elektronik.de/universal-avr-controllerboard-rn-control/

News: Jetzt gibts eigenes RN-Control-Unterforum im Roboternetz!

Frank
11.07.2004, 21:17
Als Hinweis:
Das Board liegt jetzt in der Version 1.4 vor.
EInige winzige Details wurden noch verbessert. So stehen jetzt noch weitere Steckmöglichkeiten für das Potential +5V und GND zur Verfügung. Zudem gibt es 3 weitere Jumper die wahlweise den i2C-Bus von +5V, Batteriespannung und INT trennen können. Somit hat man wahlweise noch einen weiteren Port frei. Das trennen der Betriebsspannung vom I2C-Port kann sinnvoll sein, wenn bereits ein anderes Board am I2C-Bus diese Spannungen bereitstellt. Somit könnten beispielsweise auch mehrere RN-COntrol über den I2C-Bus verbunden werden.
Ansonsten ist alles bewährte erhalten geblieben. Die Software läuft unverändert auf allen Versionsnummern!

Anmerkung: Wer bereits ein Board bestellt hat und noch auf Lieferung wartet, erhält automatisch die neue Version 1.4.

Die neue Doku mit geändertem Schaltplan, Bestückungsplan, Jumperbeschreibung ist im Download-Bereich verfügbar

So sieht es nun aus:

http://www.robotikhardware.de/bilder/rncontrol14diagrammmittel.jpg

Gruß Frank

Frank
30.01.2005, 15:59
Hier ein Testprogramm das mit dem neuen Bascom-Compiler getestet wurde. Allerdings nur Vollversion.
Wer die 4k Demo installiert hat, kann mir mal ne PM senden ob es sich da auch compilieren läßt! Sollte es eigentlich! Bei der 2K Demo müsste man es kürzen.



'################################################# ##
'rncontroltest.BAS
'für
'RoboterNetz Board RN-CONTROL ab Version 1.1
'Das neue preiswerte Controllerboard zum experimentieren

' Achtung:
' Diese Demo ist mit Bascom Compiler 1.11.7.7 getestet

'
'Aufgabe:
' Dieses testprogramm testet gleich mehrere Eigenschaften auf dem Board
' Den verschiedenen Tasten sind bestimmte Funktionen zugeordnet
' Taste 1: Zeigt Batteriespannung über RS232 an
' Taste 2: Angeschlossene Motoren beschleunigen und abbremsen
' Taste 3: Einige male Lauflicht über LED´s anzeigen. Am I2C-Bus
' darf in diesem Moment nichts angeschlossen sein
' Taste 4: Zeigt analoge Messwerte an allen Port A PIN´s über RS232 an
''Taste 5: Zeigt digitalen I/O Zustand von PA0 bis PA5 an


' Sehr gut kann man aus dem Demo auch entnehmen wie Sound ausgegeben wird,
' wie Tasten abgefragt werden und wie Subroutinen und Funktionen angelegt werden

'Autor: Frank
'Weitere Beispiele und Beschreibung der Hardware
'unter http://www.Roboternetz.de oder robotikhardware.de
'################################################# ######


Declare Sub Batteriespannung()
Declare Sub Motortest()
Declare Sub Lauflicht()
Declare Sub Showporta()
Declare Sub Showdigitalporta()
Declare Function Tastenabfrage() As Byte


$regfile = "m32def.dat"
' bei Mega 16 $regfile = "m16def.dat"
$framesize = 32
$swstack = 32
$hwstack = 32


Dim I As Integer
Dim N As Integer
Dim Ton As Integer

$crystal = 16000000 'Quarzfrequenz
$baud = 9600

Config Adc = Single , Prescaler = Auto 'Für Tastenabfrage und Spannungsmessung

Config Pina.7 = Input 'Für Tastenabfrage
Porta.7 = 1 'Pullup Widerstand ein


Const Ref = 5 / 1023 'Für Batteriespannungsberechnung

Dim Taste As Byte
Dim Volt As Single

' Für Motorentest
'Ports für linken Motor
Config Pinc.6 = Output 'Linker Motor Kanal 1
Config Pinc.7 = Output 'Linker Motor Kanal 2
Config Pind.4 = Output 'Linker Motor PWM
'Ports für rechten Motor
Config Pinb.0 = Output 'Rechter Motor Kanal 1
Config Pinb.1 = Output 'Rechter Motor Kanal 2
Config Pind.5 = Output 'Rechter Motor PWM
Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down
Pwm1a = 0
Pwm1b = 0
Tccr1b = Tccr1b Or &H02 'Prescaler = 8





I = 0
Sound Portd.7 , 400 , 450 'BEEP
Sound Portd.7 , 400 , 250 'BEEP
Sound Portd.7 , 400 , 450 'BEEP
Print
Print "**** RN-CONTROL 1.4 *****"
Print "Das neue Experimentier- und Roboterboard"
Print "Weitere passende Zusatzboards bei www.robotikhardware.de"
Print
Do




Taste = Tastenabfrage()
If Taste <> 0 Then

Select Case Taste
Case 1
Call Batteriespannung 'Taste 1 Zeigt Bateriespannung über RS232 an
Case 2
Call Motortest 'Taste 2 Motoren beschleunigen und abbremsen
Case 3
Call Lauflicht 'Einige male Lauflicht über LED´s anzeigen. Am I2C-Port darf in diesem Moment nichts angeschlossen sein
Case 4
Call Showporta 'Zeigt Messwerte an allen Port A PIN´s
Case 5
Call Showdigitalporta 'Zeigt digitalen I/O Zustand von PA0 bis PA5 an



End Select
Sound Portd.7 , 400 , 500 'BEEP
End If

Waitms 100
Loop

End




'Diese Unterfunktion fragt die Tastatur am analogen Port ab
Function Tastenabfrage() As Byte
Local Ws As Word

Tastenabfrage = 0
Ton = 600
Start Adc
Ws = Getadc(7)
' Print "Tastenabfrage anpassen!ADC Wert ws=" ; Ws
If Ws < 500 Then
Select Case Ws
Case 400 To 450
Tastenabfrage = 1
Ton = 550
Case 330 To 380
Tastenabfrage = 2
Ton = 500
Case 260 To 305
Tastenabfrage = 3
Ton = 450
Case 180 To 220
Tastenabfrage = 4
Ton = 400
Case 90 To 130
Tastenabfrage = 5
Ton = 350
' Case Else
' Print "Tastenabfrage anpassen!ADC Wert ws=" ; Ws
End Select
Sound Portd.7 , 400 , Ton 'BEEP

End If


End Function



'Diese Unterfunktion zeigt Batteriespannung an
Sub Batteriespannung()
Local W As Word
Start Adc
W = Getadc(6)
Volt = W * Ref
Volt = Volt * 5.2941
Print "Die aktuelle Spannung beträgt: " ; Volt ; " Volt"

End Sub


'Testet Motoren und Geschwindigkeitsreglung
Sub Motortest()
'Linker Motor ein
Portc.6 = 1 'bestimmt Richtung
Portc.7 = 0 'bestimmt Richtung
Portd.4 = 1 'Linker Motor EIN

'Rechter Motor ein
Portb.0 = 1 'bestimmt Richtung rechter Motor
Portb.1 = 0 'bestimmt Richtung rechter Motor
Portd.5 = 1 'rechter Motor EIN


I = 0
Do
Pwm1a = I
Pwm1b = I
Waitms 40
I = I + 5
Loop Until I > 1023

Wait 1
Do
Pwm1a = I
Pwm1b = I
Waitms 40
I = I - 5
Loop Until I < 1
Pwm1a = 0 'Linker Motor aus
Pwm1b = 0 'rechter Motor aus
End Sub


'Einige male Lauflicht über LED´s anzeigen. Am I2C-Port darf in diesem Moment nichts angeschlossen sein
Sub Lauflicht()

Config Portc = Output
Portd = 0
For N = 1 To 10
For I = 0 To 7
Portc.i = 0
Waitms 100
Portc.i = 1
Next I
Next N
Config Portc = Input
End Sub


'Zeigt Die Analogen Messwerte An Port A An
Sub Showporta()
Local Ws As Word

Config Porta = Input
For I = 0 To 5 ' Alle internen Pullup Widerständ ein,bis auf Batteriespannungsmessungsport
Porta.i = 1
Next I

Print
Print "Ermittelte Messwerte an Port A:"
For I = 0 To 7 ' Alle Eingäne inkl.messen
Start Adc
Ws = Getadc(i)
Volt = Ws * Ref
Print "Pin " ; I ; " ADC-Wert= " ; Ws ; " bei 5V REF waeren das " ; Volt ; " Volt"
Next I
End Sub


'Zeigt den Zustand einiger freier I/O von Die Analogen Messwerte An Port A An
Sub Showdigitalporta()
Local Zustand As String * 6
Config Porta = Input
For I = 0 To 5 ' Alle internen Pullup Widerständ ein,bis auf Batteriespannungsmessungsport
Porta.i = 1
Next I

Print
Print "Ermittelter I/O Zustand Port A:"
For I = 0 To 5 ' Alle Eingäne inkl.messen
If Pina.i = 1 Then
Zustand = "High"
Else
Zustand = "Low"
End If
Print "Pin " ; I ; " I/O Zustand= " ; Pina.i ; " " ; Zustand
Next I
End Sub

Frank
23.11.2006, 09:35
Weil immer wieder mal nachgefragt wird, hier nochmal eine übersichtlichere Darstellung der Belegung der Steckklemmen auf RN-Control. Es ist zu empfehlen das Bild auszudrucken so da sman es beim Experimentieren immer griffbereit hat. Der Blick in den Schaltplan kann dann oft entfallen.




Weitere Bilder auch in RN-Wissen: https://www.roboternetz.de/wissen/index.php/RN-Control

und auf der Projektseite:
http://www.mikrocontroller-elektronik.de/universal-avr-controllerboard-rn-control/

Frank
06.03.2007, 17:00
http://www.shop.robotikhardware.de/shop/catalog/images/artikelbilder/rncontrol/jetztbootloader.gif

Ergänzung:

Seit März 2007 wird RN-Control mit dem bekannten Demo wie bisher, aber auch mit installiertem Bootloader ausgeliefert. Dies hat den Vorteil das das Board nun auch ohne ISP-Dongel per RS232 Kabel mit dem Bascom Compiler programmiert werden kann. Dies ist recht angenehm für Notebook Besitzer die kein parallelen Druckerport haben und denen der USBISP-Dongel am Anfang etwas zu teuer ist.

Nähere Hinweise dazu in der überarbeiteten Anleitung auf der Seite wo der Bootloader beschrieben wird.

http://www.mikrocontroller-elektronik.de/universal-avr-controllerboard-rn-control/

Frank
08.04.2014, 14:09
Jetzt umfangreiches C-Tutorial für RN-Control,
AVR-Studio und andere Roboternetz Boards

Für RN-Control mangelt es eigentlich nicht an Beispielprogrammen und Einführungen, jedoch lag bislang der Schwerpunkt auf der Programmiersprache Bascom.
Jetzt gibt es zusätzlich noch ein umfangreiches Tutorial für Einsteiger die in der Programmiersprache C programmieren möchten bzw. das AVR-Studio für die Entwicklung nutzen möchten.

Der Autor geht dabei besonders auch auf Einsteiger ein, alles wird genau anhand von Beispielen und vielen Farbbildern erläutert.
Eine wirklich vorbildliche Einführung die aus zahlreichen PDF-Dokumenten und Beispielprogrammen besteht.
Das gesamte Tutorial, was zudem ständig noch ergänzt wird, kann jetzt einfach kostenlos als ZIP-Datei heruntergeladen werden. Zudem ist die neuste Version auf jeder DVD die allen Bestellungen bei Robotikhardware.de beiliegt.

Natürlich werden auch weiterhin neue Bascom-Programme kommen.


Download für C-Tutorial hier (https://roboternetz.de/download/c_tutorial.zip) (die Datei wird regelmäßig ergänzt)

https://roboternetz.de/download/c_tutorial.zip

https://roboternetz.de/download/c_tutorial800.jpg

Frank
08.05.2014, 15:12
Unser AVR C-Tutorial wurde erweitert - Stand 8.5.2014 - 17.531 KB
https://roboternetz.de/download/c_tutorial.zip

Update vom 29.6.2015
Die Projektbeschreibung / Eagle Dateien usw. sind nun auf folgender Seite:
http://www.mikrocontroller-elektronik.de/universal-avr-controllerboard-rn-control/

Ab sofort ist das Projekt unter einer CC-Lizenz freigegeben
Näherere Hinweise unter : http://www.mikrocontroller-elektronik.de/universal-avr-controllerboard-rn-control/


http://www.mikrocontroller-elektronik.de/wp-content/uploads/2017/02/leiterplatten-guenstig-400px-300x200.jpg (http://www.mikrocontroller-elektronik.de/empfohlene-leiterplattenhersteller/)

http://rn-wissen.de/bilder/freiesprojekt.png (http://www.mikrocontroller-elektronik.de/universal-avr-controllerboard-rn-control/)