Hallo

Ik ben net nieuw op dit forum waar ik me speciaal om meer informatie te kunnen verkrijgen voor mijn schoolproject (een R/C robot bouwen) heb aangemeld.

Ik wil namelijk met 2 klasgenoten (ik zit op het VWO 2e leerjaar) een op afstand bestuurbare robot gaan bouwen met een extra functie (de robot word ongeveer 30Kg). Die extra functie word waarschijnlijk een grijper of een flipper die zal worden aangedreven met 1 of 2 lineaire actuators en we zouden het leuk vinden als de motoren ook genoeg kracht kunnen leveren om iemand zoals een leraar mee rond te rijden:D. als aandrijving willen we gezien het zeer lage budget 2 ruitenwisser motoren gaan gebruiken. Hij gaat tankbesturing krijgen

Wat denken jullie van deze keuzes, en zouden
jullie misschien iets anders adviseren?

Dan zou ik willen weten wat jullie zouden adviseren voor de motoren en actuator aan te sturen gezien ik zelf niet veel van electronica weet. Ik heb namelijk wel veel over H-Bruggen gelezen, maar ik denk niet dat deze zijn voor R/C gebruik en dat hier dus nog iets tussen geschakeld moet gaan worden.

de dingen kunnen waarschijnlijk wel zelf gemaakt worden maar met microcontrollers ben ik (nog) niet echt bekend.

Greetz joel26

Bedankt voor de reactie!!!

Ik heb de forum-sectie schoolvragen nog een keer doorgelezen, maar ik snap nog steeds niet hoe het nu zit met die H-Bruggen. Kunnen deze nu gewoon worden aangesloten op een R/C ontvanger of moet hier iets tusen geschakeld worden e.d.

alvast bedankt, joel26

http://www.leang.com/robotics/info/circuits/hbridge.gif

Neem een simpele hbrug zoals deze. Om achter de werking te komen moet je gewoon bedenken dat de torretjes als schakelaars werken. Staat er een spanning op de basis dan gaat de schakelaar dicht en kan de stroom lopen.

Verzin nu zelf maar wat er gebeurt als je spanning op A zet(zelfde voor B).

Een Hbrug is prima voor jouw doel.

robot van 30 kilo ? fliper of grijper?

klinkt als robotwars?

stef

Bedankt voor de verdere informatie!!!
nu is het echt veel duidelijker.
Ik wou inderdaad een baatlebot ervan maken maar de 2 anderen wat er aan meewerken niet...
maar nu heeft iedereen wat: grijper willen zij, flipper wil ik.

greetz, joel26

nou.. Je hebt flinke motors nodig.

Het is wel een leuk project. veel succes

mvg, dennis

inderdaad, maar gezien hij niet sel hoeft.
afname in snelheid is toename in koppel he

ken je dutchrobotgames? zo niet www.dutchrobotgames.nl

ben ik zelf ook actief met robots.

http://robots-online.nl/foto/index.php?JGALL_DIR=robots/

heb je e-mail dan kan ik je meschien nog wat info geven

stef

vet! die site ken ik inderdaad.
maar heel even. ik weet dus echt bijna niks van electronica, maar hoe moet ik deze dan aansluiten op de ontvanger?

greetz, joel26

daar voor hoef je niet veel verstand van electronica te hebben.

je hebt een speedcontroller daar aan zit een ingang (battrij) en een uitgang (motor) en een signaal kabeltje.
die doe je in je ontvanger en klaar.

wat is je msn adres (als je die hebt) kan ik het via msn uitlegen.

stef

als verzender gaan we de Spektrum DX5e 5-Channel 2.4Ghz Radio System Mode 1 gebruiken, met als ontvanger de Spektrum BR6000 6 Channel Bot Receiver.
We gaan dus waarschijnlijk zo'n soort H-Brug gebruiken, maar het lijkt mij niet dat deze 2 (ontvanger+H-Brug) zonder iets er tussen gewoon op elkaar aangesloten kunnen worden. Ik heb door een beetje op forums te zoeken dus vernomen dat deze RC ontvanger dus PWM signalen uitzend, maar wat voor input signaal heeft deze H-Brug dan nodig?
Als dit ook PWM is is het wel gemakkelijk, maar wat moet ik dan anders doen om deze met elkaar te laten werken?

uit je ontvanger komt elke 20 ms (miliseconden) een puls die tussen de 1ms en de 2 ms zit.

bijv.:
1ms = linksom
2ms = rechtom

je h-brug wil een pwm signaal, zo dat je hem op verschillende toeren kan laten draaien.

je zal dus een controller moeten maken (pic of avr) die een signaal inleest en ook weer uit stuurt.

stef

Moet deze zelf geprogrammeerd worden of zijn er hier ook kant en klare varianten van op de markt?

Alvast bedankt!

heb ooit wel eens gehoort dat ze er zijn geweest maar niet meer gemaakt worden. maar ze zijn ook wel simpel zelf te programmeren.

stef

Hallo.

Hier heb je een H-brug, bijv. voor ruitenwisser motor.

http://www.uploadarchief.net/files/download/eind%20-%20trap.jpg

En hier heb je een code voor het omzetten van je ontvanger signaal naar PWM.

   
'*  Name    : MODELBOUW - REGELAAR.                                     
'*  Author  : H van Zwieten.                   
'*  Notice  : Copyright (c) 2008.
'*  Notice  : All Rights Reserved.                               
'*  Date    : 22-7-2008.                                         
'*  Version : 1.0.                                              
'*  Notes   : Van puls in naar pwm uit. 
'*  Notes   : Gebruikt 1297 programma woorden en 40 variabele bytes.

; Uitleg werking programma: Eerst wordt de puls waarde gemeten.
; Dit wordt gedaan met puls in test ( dit is een ander programma ).
; De waarde van de ontvanger wordt gemeten en op een display gezet.
; Waarde van de zender stuurknuppel in de bovenste, middelste en onderste stand.
; Hoogste , midelste en laagste waarde Bvb: Ho = 457 Mi = 353 La = 243.
; Daarna wordt met een formule de pwm waarde berekend.
; We gaan uit van de kleinst gemeten waarde La = 243.
; De formule die we gebruiken is (var1-243)x1.21.
; var1 is een variabele waar de waarden Ho, Mi en La ingezet worden.
; We moeten een pwm waarde gaan maken die van 0 t/m 255 loopt.
; We rekenen met de laagste waarde en trekken die van elkaar af. 
; Als var1 = 243 - 243 = 0 x 1.21 = 0 ( laagste pwm waarde ).
; Als var1 = 353 - 243 = 110 x 1.21 = 133.1 ( middelste pwm waarde ).
; Als var1 = 457 - 243 = 214 x 1.21 = 258.94 ( hoogste waarde ).
; De pwm waarde mag niet boven de 255 uitkomen.
; Dit doen we met als waarde > 254 dan waarde = 255.
; De pwm waarde mag ook niet onder de 0 komen.
; Dit doen we met als waarde < 0 dan waarde = 0.
; De waarde 1.21 kan varieren dat licht aan de gemeten puls waarde. 
; Door het pwm 2 signaal te inveteren tov pwm 1 kan je de motor links en rechts.
; laten draaien en het toerental regelen.
; De twee signalen worden nu gemixst in de eindtrap.
; Hier onder het programma. 

Device 16F877                                  ; processor type

XTAL 10                                        ; cristal 10Mhz

ALL_DIGITAL true                               ; alle poorten digitaal

Declare CCP1_PIN PORTC.2                       ; pwm 1 op poort C.2
Declare CCP2_PIN PORTC.1                       ; pwm 2 op poort C.1

Symbol On = 1                                  ; 1 is hoog
Symbol off = 0                                 ; 0 is laag

Symbol vrijgave  = PORTC.0                     ; vrijgave op poort C.0
Symbol schak_1   = PORTB.1                     ; schakelaar op poort B.1
Symbol controle_led = PORTB.2                  ; led op poort B.2

Dim var1 As Word                               ; variabele var1
Dim waarde As DWord                            ; variabele waarde

Clear                                          ; wis geheugen 
                                   
DelayMS 2000                                   ; wacht 2 seconden

Cls                                            ; wis display

;poortb  543210                                ; hulpregel poort B
TRISB = %000011                                ; poort B.0,B.1 als ingang
                                               ; poort B.2 als uitgang
;poortc  76543210                              ; hulpregel poort C
TRISC = %00000000                              ; poort C als uitgang

start:                                         ; begin start
    controle_led = off                         ; led uit
    vrijgave = off                             ; vrijgave uit
    var1 = PulsIn PORTB.0 , 1                  ; lees puls en zet in variabele
    waarde = (var1-243)*1.21                   ; formule naar pwm waarde
    If waarde > 137 Then GoTo rechts_om        ; als waar dan
    If waarde < 117 Then GoTo links_om         ; als waar dan
    If schak_1 = On Then GoTo wacht            ; als waar dan
GoTo start                                     ; naar begin start
    
rechts_om:                                     ; begin rechts om
    If schak_1 = On Then GoTo wacht            ; als waar dan
    vrijgave = On                              ; vrijgave aan
    var1 = PulsIn PORTB.0 , 1                  ; lees puls en zet in variabele
    waarde = (var1-243)*1.21                   ; formule naar pwm waarde
    If waarde > 254 Then waarde = 255          ; als waar dan
    HPWM 1 , waarde , 8000                     ; pwm 1 uitgang 0 t/m 255 , 8Khz
    HPWM 2 , ~ waarde , 8000                   ; pwm 2 uitgang 0 t/m 255 , 8Khz
    If waarde = 255 Then                       ; als waar dan
    controle_led = On                          ; stuurknuppel bovein led aan
    Else controle_led = off                    ; anders led uit
    EndIf                                      ; einde als
    If waarde < 138 Then GoTo start            ; als waar dan
GoTo rechts_om                                 ; naar begin rechts om

links_om:                                      ; begin links om
    If schak_1 = On Then GoTo wacht            ; als waar dan
    vrijgave = On                              ; vrijgave aan
    var1 = PulsIn PORTB.0 , 1                  ; lees puls en zet in variabele
    waarde = (var1-243)*1.21                   ; formule naar pwm waarde 
    If waarde < 0 Then waarde = 0              ; als waar dan
    HPWM 1 , waarde , 8000                     ; pwm 1 uitgang 0 t/m 255 , 8Khz
    HPWM 2 , ~ waarde , 8000                   ; pwm 2 uitgang 0 t/m 255 , 8Khz
    If waarde = 0 Then                         ; als waar dan
    controle_led = On                          ; stuurknuppel onderin led aan
    Else controle_led = off                    ; anders led uit
    EndIf                                      ; einde als
    If waarde > 116 Then GoTo start            ; als waar dan
GoTo links_om                                  ; naar begin links om

wacht:                                         ; begin wacht
    vrijgave = off                             ; vrijgave uit
    HPWM 1,0,0                                 ; pwm 1 uit
    HPWM 2,0,0                                 ; pwm 2 uit
    controle_led = On                          ; led aan
    DelayMS 250                                ; wacht 0.25 sec
    controle_led = off                         ; led uit
    DelayMS 250                                ; wacht 0.25 sec
    If schak_1 = off Then GoTo start           ; als waar dan
GoTo wacht                                     ; naar begin wacht
      
End                                            ; einde programma

Het programma is gemaakt met proton-plus, in picbasic.

Kan je ook een hex file sturen.

De gebruikte zender is een graupner C4X 40MHz twee kanaals.

Hier nog een aansluit schema.

https://www.uploadarchief.net/files/download/resized/ontvanger%20+%20motorregelaar.jpg

Gr Lambiek.

ZOu dit programma ook werken in combinatie met de BR6000 ontvanger van Spektrum (2.4Ghz). Alvast bedankt

@ Joel26.

Heb nog een programma om je ontvanger uit te lezen, als je de waarde's verandert in het andere programma lukt het misschien, ik ken dat type zender niet.


'*  Name    : PULS IN TEST_1.                                     
'*  Author  : H.v.Zwieten.                   
'*  Notice  : Copyright (c) 2008. 
'*  Notice  : All Rights Reserved.                              
'*  Date    : 4-11-2008.                                         
'*  Version : 1.0.                                               
'*  Notes   : Met dit programma kan de puls van een                                                  
'*  Notes   : modelbouw zender worden gemeten.
'*  Notes   : De waarde wordt op een diplay gezet.
'*  Notes   : 336 programma woorden en 19 variabele bytes.
                                              
Device 16F628A                         ; processor type

Config WDT_OFF,_                       ; WatchDog Timer uit
       PWRTE_ON,_                      ; Power-up Timer Enable aan
       LVP_OFF,_                       ; Low Voltage Programming uit
       MCLRE_OFF,_                     ; Externe Master Reset Enable uit
       HS_OSC                          ; cristal groter dan 4 Mhz
       
XTAL = 10                              ; cristal 10 Mhz
          
ALL_DIGITAL true                       ; alle poorten digitaal

Declare LCD_ENPIN PORTB.2              ; enable display poort B.2
Declare LCD_RSPIN PORTB.3              ; reset display poort B.3
                                       ; data display poort B.4 t/m B.7

Symbol On = 1                          ; 1 is hoog
Symbol off = 0                         ; 0 is laag

Dim var1 As Word                       ; variabele var1
Dim waarde As Word                     ; variabele waarde

Clear                                  ; wis geheugen 
                                   
DelayMS 2000                           ; wacht 2 seconden

Cls                                    ; wis display

;poortb  543210                        ; hulpregel poort B
TRISB = %000001                        ; ontvanger op poort B.0

test:                                  ; begin test
    waarde = var1                      ; variabele is waarde
    var1 = PulsIn PORTB.0,1            ; lees puls en zet in variabele
    Print At 1,3,"WAARDE_ONTVANGER"    ; zet text op display
    Print At 2,9,Dec waarde,"  "       ; zet waarde op display
GoTo test                              ; naar begin test
      
End                                    ; einde programma

Ik hoop dat je er wat aan hebt, anders hoor ik het wel.

Gr Lambiek.

Maar als ik dan de microcontroller tusen de ontvanger en de motor zet zoals in dat schema, en ik zou dan dat programma gebruiken, zou ik dus met RC de motor kunnen besturen?stel we zouden toch een andere verzender en ontvanger gebruiken, zou het zelfde programma dan toch werken?

Alvast bedankt, joel26

Hier heb je het schema voor de uitlezing van je ontvanger, als je de waarde's afleest op het display en die verwerkt ( volgens de formule ) in het andere programma, dan moet het werken.
http://www.uploadarchief.net/files/download/resized/uitlezing%20-%20ontvanger.jpg

Gr Lambiek.

@ Joel26.

Kan je het programma trouwens compileren?.

Anders stuur ik een hex_file.

Gr Lambiek.

Heel erg bedankt!

Die compiler moet ik nog even naar kijken als het zo ver is, waarschijnlijk heeft iemand die ik ken wel een geschikte.

Is het trouwens mogelijk (de reden is voor meer koppel) om hetzelfde systeem te blijven gebruiken als ik de motoren aan de linkerkant parallel schakel met elkaar (en met rechts natuurlijk ook)?

Greetz, joel26

[Bericht gewijzigd door joel26 op (39%)]

Als je ruitenwisser motoren gebruikt heb je koppel zat, die zijn ook niet zo duur (probeer het bij een auto-slooperij).

En als je de eindtrap wil maken vergeet het koelblok niet, anders gaat het fout, heb hiervoor ook een printlayout.

Gr Lambiek.

Hier is de printlayout.
Heb nog een print liggen.

http://www.uploadarchief.net/files/download/resized/motor%20-%20reg%20-%20print.gif

Gr Lambiek.

@Lambiek

Dat extra koppel isomdat we hem misschien ook zou wilden bouwen dat hij ook personen tot 75Kg(zo als leraren) zou kunnen rondrijden:D
Maar zou die H-Brug dat aankunnen kwa Max. stroom e.d.?

Greetz, joel26

[Bericht gewijzigd door joel26 op (15%)]