Arduino gebruiken op de motor

Gixxer-harry

MF veteraan
4 jun 2006
3.244
1
Gasselte
Ik ben op het net de Arduino tegen gekomen en ik heb er eentje besteld want er zijn vast heel veel leuke dingen mee te maken voor op de brommert
Kennen jullie dit en doen jullie er ook leuke dingen voor de motor mee?
 
een raspberry pi van 5x7x1 cm en 7 watt met standaard IO pinnen en libraries daarvoor is wel wat anders dan een laptop van 20x30x5 cm, 45 watt met enkel een usb poort.
Ik ben fan van Raspberry pi :-) hoewel ik ook wel projectjes maak met atmel.
 
Laatst bewerkt:
een raspberry pi van 5x7x1 cm en 7 watt met standaard IO pinnen en libraries daarvoor is wel wat anders dan een laptop van 20x30x5 cm, 45 watt met enkel een usb poort.
Ik ben fan van Raspberry pi :-) hoewel ik ook wel projectjes maak met atmel.

eens... atmel is voldoende, ik moet zeggen dat ik de Raspberry eigenlijk gekocht heb als speelgoed :P nog helemaal geen tijd gehad om er ook maar iets mee te doen. Dat ding ligt nu gewoon een beetje te zijn...
 
Hmm... klinkt als een leuk topic, ga ik volgen :P Zelf elektrotechniek gestudeerd, dus heb ook wel het eea gemaakt aan elektronica, arduino nooit zelf gebruikt, maar wel gewoon direct met de microcontroller die ook op de arduino bordjes zitten bezig geweest.. (atmel microcontrollers)

Onder anders een gearindicatortje gemaakt... Elektronica functioneert op de werkbank, maar ik weet van mijzelf dat als ik het in een behuizing moet gaan ingieten etc. dat het weer niet mooi word.. En daarnaast moet ik dan nog een waterdichte potentiometer op mijn motor zien te plaatsen :P

Plaatjes:

Eerst effe op breadbordje ontwerpen en experimenteren:

gearindicator.jpg



PCB'tje ontworpen:

PCB.png



Eindresultaat, LED display kom hier bovenop:

2012-07-24%2014.50.34.jpg


2012-07-24%2016.46.40.jpg


Zitten hier ook nog wat programmeerdraden aan, op zich heb ik alleen 12V nodig, neutraallampje signaal en koppelingssignaal en de input van een potentiometer... Dan zou het in principe moeten werken...
 
Met een Arduino leer je nog geen electronica. Je hebt zeker basiskennis nodig van digitale techniek en basis programmeerkennis om er praktisch wat mee te kunnen doen.

Een Arduino is niets anders dat een uitgebreide PIC / Microcontroller. Heel compact op één chip samengevat. En een Arduino wordt pas zinvol als je er modules aankoppelt voor bepaalde functionaliteit.
 
Laatst bewerkt:
Verkeerde componenten van conrad binnengekregen, opAmps i.p.v. mosfets, daar kan ik helaas m'n bobine niet mee schakellen. Nog 2 dagen weer wachten tot ik het spul in elkaar kan zetten dus :(
 
Hmm... klinkt als een leuk topic, ga ik volgen :P Zelf elektrotechniek gestudeerd, dus heb ook wel het eea gemaakt aan elektronica, arduino nooit zelf gebruikt, maar wel gewoon direct met de microcontroller die ook op de arduino bordjes zitten bezig geweest.. (atmel microcontrollers)

Ook wel over nagedacht om een atmel microcontroller te gebruiken (direct). De programmer e.d. die je dan weer nodig hebt voegt nog weer een stuk werk toe. Voor nu gebruik ik een tussenstap, ik upload mijn code gewoon in avr-c, dus zonder arduino library (zonder digitalWrite e.d.).

Programming Arduino Uno in pure C

Deel van de reden is ook dat de Arduino IDE (in java geschreven -O- ) nogal vaak vastloopt op een linux machine.
 
Ook wel over nagedacht om een atmel microcontroller te gebruiken (direct). De programmer e.d. die je dan weer nodig hebt voegt nog weer een stuk werk toe. Voor nu gebruik ik een tussenstap, ik upload mijn code gewoon in avr-c, dus zonder arduino library (zonder digitalWrite e.d.).

Programming Arduino Uno in pure C

Deel van de reden is ook dat de Arduino IDE (in java geschreven -O- ) nogal vaak vastloopt op een linux machine.

Ik heb van begin af aan op school eigenlijk geleerd met de AVR studio te werken.. Daar programmeer ik dan gewoon direct in C, en schiet dat met een programmer via ISP in de microcontroller... :)

Java heb ik in het eerste jaar van mijn opleiding gehad, maar heel snel weer vergeten... Ik vond OO-programmeren echt helemaal niets :P Maar, wil er eigenlijk weer is wat mee gaan doen, want ik heb een stukje elektronica wat ik wil besturen via een programma'tje in plaats van alleen maar karakters sturen via een terminal programma...

Wil hier eigenlijk een besturingsprogramma op de computer voor maken, gewoon met een paar knopjes, als je op een knop drukt dat hij een karakter via de seriële poort stuurt en daarna nog terugleest wat hij terugkrijgt of waar ik net opdracht toe gegeven had, ook echt gebeurd is...

Gaat hier om: :P

IMG_6562.jpg
 
Laatst bewerkt:
Zitten hier ook nog wat programmeerdraden aan, op zich heb ik alleen 12V nodig, neutraallampje signaal en koppelingssignaal en de input van een potentiometer... Dan zou het in principe moeten werken...

Zo, dat is wel erg mooi wat je daar gemaakt hebt zeg!

Misschien een domme vraag, maar waar sluit je die potentiometer op aan?
Of reken je je versnelling uit naar gelang toerental/gereden snelheid?
 
Zo, dat is wel erg mooi wat je daar gemaakt hebt zeg!

Misschien een domme vraag, maar waar sluit je die potentiometer op aan?
Of reken je je versnelling uit naar gelang toerental/gereden snelheid?

Nee, geen domme vraag hoor :) Ik had het zo gemaakt, dat ik met de potentiometer kijk of ik het schakelpookje omhoog of omlaag beweeg, zodat ik zo +1/-1 versnelling kan doen.. En dan gebruik ik het neutraallampje als referentie, dus maakt niet uit welke versnelling hij in denk te staan, zodra het neutraallampje brandt en dat signaal dus aanwezig is bij de gearindicator, gaat hij automatisch naar 'N' om vanaf daar weer gewoon naar 1 of 2 te springen als je op of terugschakelt..

Maar, ik heb nog niet echt gezocht naar waterdichte potentiometers omdat ik toch misschien wel een gearindicator wil gaan kopen... Aangezien die al netjes in behuizing zit gegoten enzo.. Alhoewel ik mijn eigen die ook de 'N' van neutraal aan kan geven, toch wel erg mooi vind :P Die GiPro dingen kunnen dat geloof ik niet aangeven..
 
Maar, ik heb nog niet echt gezocht naar waterdichte potentiometers omdat ik toch misschien wel een gearindicator wil gaan kopen... Aangezien die al netjes in behuizing zit gegoten enzo.. Alhoewel ik mijn eigen die ook de 'N' van neutraal aan kan geven, toch wel erg mooi vind :P Die GiPro dingen kunnen dat geloof ik niet aangeven..
Als leek op het gebied van programmeren van micro-controlers maar niet bang van een elektrische of mechanische uitdaging een oplossing voor het waterdicht controleren van het schakelen.

Aan de zijkant van de versnellingspook een magneet lijmen die bij het op en neer schakelen één van de twee reedcontacten laat sluiten, 1 boven en 1 onder de ruststand van de versnellingspook.

Om het ongewild verspringen van de elektrische stand bij het "spelen" met de versnellingspook tegen te gaan kan je het contact van de koppelingshendel gebruiken, dus alleen reageren op sluiten van het reedcontact als ook de koppeling bediend is.
 
Als leek op het gebied van programmeren van micro-controlers maar niet bang van een elektrische of mechanische uitdaging een oplossing voor het waterdicht controleren van het schakelen.

Aan de zijkant van de versnellingspook een magneet lijmen die bij het op en neer schakelen één van de twee reedcontacten laat sluiten, 1 boven en 1 onder de ruststand van de versnellingspook.

Om het ongewild verspringen van de elektrische stand bij het "spelen" met de versnellingspook tegen te gaan kan je het contact van de koppelingshendel gebruiken, dus alleen reageren op sluiten van het reedcontact als ook de koppeling bediend is.

Reedcontact is misschien wel een goeie optie ja! Nog helemaal niet aan gedacht... Enne, geloof dat ik het al zo geprogrammeerd had inderdaad, dat hij alleen naar de input van de potentiometer kijkt op het moment dat de koppeling is ingetrokken inderdaad.. Dat had ik ook al bedacht :P Maar, reedcontact is dan inderdaad wel beter ja... Thanks voor de tip!
 
Ik had al een tijdje een idee om het volgende te doen:

waterdicht touchscreen display met HDMI aansluiting
Raspberry Pi
GPS module
BlueTooth module
WiFi module
GSM module

linkerkant van het scherm huidige snelheid (liefst analoge stijl)
rechterkant navigatie en stuk voor berichten van telefoon (zien wie je belt etc)

eventueel ook een toerenteller erbij.

Door middel van GPS kun je dan ook een tracking systeem maken. Uit te lezen via WiFi en in geval van nood door een SMS te sturen naar de GSM module voor actuele data

ben er alleen niet handig genoeg mee om dit voor elkaar te krijgen.
 
Laatst bewerkt:
Hmm... klinkt als een leuk topic, ga ik volgen :P Zelf elektrotechniek gestudeerd, dus heb ook wel het eea gemaakt aan elektronica, arduino nooit zelf gebruikt, maar wel gewoon direct met de microcontroller die ook op de arduino bordjes zitten bezig geweest.. (atmel microcontrollers)

Onder anders een gearindicatortje gemaakt... Elektronica functioneert op de werkbank, maar ik weet van mijzelf dat als ik het in een behuizing moet gaan ingieten etc. dat het weer niet mooi word.. En daarnaast moet ik dan nog een waterdichte potentiometer op mijn motor zien te plaatsen :P

Plaatjes:

Eerst effe op breadbordje ontwerpen en experimenteren:

[afbeelding]


PCB'tje ontworpen:

[afbeelding]


Eindresultaat, LED display kom hier bovenop:

[afbeelding]

[afbeelding]

Zitten hier ook nog wat programmeerdraden aan, op zich heb ik alleen 12V nodig, neutraallampje signaal en koppelingssignaal en de input van een potentiometer... Dan zou het in principe moeten werken...

Ziet er goed uit :). Waarvoor heb je de potmeter eigelijk nodig?

Ben zelf ook al een hele tijd bezig met een gear indicator, eerst plannen gehad om het te combineren met een flitspaalmelder (gpsontvanger aan de uC, lijst met coordinaten in eeprom). Daar ben ik vanaf gestapt nadat een Garmin had gekocht ;). Ook vond ik het display veel te groot.

Inmiddels heb ik het bijna voor elkaar. 19 x 12mm 7segment display met daaronder een print met een pic16f688 in TSSOP uitvoering en een paar 0603 weerstandjes en daaronder een 2'e print van dezelfde afmeting met een voeding. Software is al een behoorlijke tijd klaar, behuizing is ook klaar, moet het alleen nog afmaken en inbouwen :P.
 
Ziet er goed uit :). Waarvoor heb je de potmeter eigelijk nodig?

Ben zelf ook al een hele tijd bezig met een gear indicator, eerst plannen gehad om het te combineren met een flitspaalmelder (gpsontvanger aan de uC, lijst met coordinaten in eeprom). Daar ben ik vanaf gestapt nadat een Garmin had gekocht ;). Ook vond ik het display veel te groot.

Inmiddels heb ik het bijna voor elkaar. 19 x 12mm 7segment display met daaronder een print met een pic16f688 in TSSOP uitvoering en een paar 0603 weerstandjes en daaronder een 2'e print van dezelfde afmeting met een voeding. Software is al een behoorlijke tijd klaar, behuizing is ook klaar, moet het alleen nog afmaken en inbouwen :P.

Hiervoor:

Simon4all in "Arduino gebruiken op de motor"

Om uit te lezen of je het schakelpookje dus naar boven of beneden doet... Maar, inmiddels heb ik de tip gekregen om het met een reedcontact te doen, wat eigenlijk een betere oplossing is denk ik.. ALS ik er al is mee aan de slag ga... :P

EDIT:

Hoe heb jij jouw gearindicator gemaakt dan? Die van mij heb ik nu zo ingesteld, dat als de koppelingshendel ingetrokken is en de potentiometer in het midden staat, dan kijkt hij of hij omhoog gedaan word of omlaag, en daarna weer naar het midden terugkomt, en dan doet hij +1 of -1 versnelling, waarbij hij altijd naar 'N' "reset" als het neutraallampje aangaat... Dus mocht je onverhoopt een keer op of terugschakelen zonder dat de gearindicator dit ziet, of juist een keer teveel of te weinig telt, dit weer gesynct word de eerste keer dat je weer in neutraal terugkomt...
 
Laatst bewerkt:
Ik rij een SV1000, die heeft een analoge sensor (waarschijnlijk gewoon een potmeter) in de versnellingsbak. Bij het installeren moet je ff de versnellingen inleren. Daarbij wordt per versnelling een gemiddelde van de gemeten analoge waarde opgeslagen.

Tijdens normaal gebruik wordt continue de spanning gemeten en gefilterd (digitaal laag doorlaat) om gekke pieken te voorkomen. Vervolgens wordt de tabel met de opgeslagen waarden doorgelopen, de opgeslagen spanning die het dichtste in de buurt zit wordt gekozen als versnelling.

Overigens is het ook mogelijk om het display om te keren :), voor het geval dat de kabel niet naar onder, maar naar boven moet lopen :P.

Dit is de beste methode, omdat je altijd de correcte versnelling hebt. Het maakt niet uit of je stil staat of rijdt.

Andere methode is het toerental en snelheid te meten. Door per versnelling de verhouding tussen die 2 op te slaan kun je later de versnelling bepalen. Is wat moeilijker te implementeren omdat de berekende verhouding makkelijker ver afwijkt tenopzichte van een analoge spanning meten. Daarnaast moet je rijden om de juiste versnelling te bepalen.

Heb nooit de moeite genomen om dat ook te implementeren :P.
 
Ik rij een SV1000, die heeft een analoge sensor (waarschijnlijk gewoon een potmeter) in de versnellingsbak. Bij het installeren moet je ff de versnellingen inleren. Daarbij wordt per versnelling een gemiddelde van de gemeten analoge waarde opgeslagen.

Tijdens normaal gebruik wordt continue de spanning gemeten en gefilterd (digitaal laag doorlaat) om gekke pieken te voorkomen. Vervolgens wordt de tabel met de opgeslagen waarden doorgelopen, de opgeslagen spanning die het dichtste in de buurt zit wordt gekozen als versnelling.

Overigens is het ook mogelijk om het display om te keren :), voor het geval dat de kabel niet naar onder, maar naar boven moet lopen :P.

Dit is de beste methode, omdat je altijd de correcte versnelling hebt. Het maakt niet uit of je stil staat of rijdt.

Andere methode is het toerental en snelheid te meten. Door per versnelling de verhouding tussen die 2 op te slaan kun je later de versnelling bepalen. Is wat moeilijker te implementeren omdat de berekende verhouding makkelijker ver afwijkt tenopzichte van een analoge spanning meten. Daarnaast moet je rijden om de juiste versnelling te bepalen.

Heb nooit de moeite genomen om dat ook te implementeren :P.

Ik heb een analoge (kabel) snelheidsmeter, toerenteller durf ik zo niet te zeggen, dus die laatste inplementatie kan sowieso niet.. Als ik een gearindicator koop, moet ik ook sowieso een extra sensor bij 't achterwiel plaatsen.. Dus ik ga is kijken naar een implementatie met een reedcontact, of een hall-sensor kan natuurlijk ook bedenk ik mij net...
 
De draai schakelaar waar M14 het over heeft heb ik niet op mijn motor maar alleen een schakelaar die verbinding met aarde maakt als de motor in zn neutraal staat maar er past wel zo'n draaischakelaar op mijn blok
Misschien kan je bij een h*nda dat ook ombouwen naar een schakelaar die op een type zit waar versnellingen worden aangegeven op het daschbord
 
Ik heb van begin af aan op school eigenlijk geleerd met de AVR studio te werken.. Daar programmeer ik dan gewoon direct in C, en schiet dat met een programmer via ISP in de microcontroller... :)

Java heb ik in het eerste jaar van mijn opleiding gehad, maar heel snel weer vergeten... Ik vond OO-programmeren echt helemaal niets :P Maar, wil er eigenlijk weer is wat mee gaan doen, want ik heb een stukje elektronica wat ik wil besturen via een programma'tje in plaats van alleen maar karakters sturen via een terminal programma...

Wil hier eigenlijk een besturingsprogramma op de computer voor maken, gewoon met een paar knopjes, als je op een knop drukt dat hij een karakter via de seriële poort stuurt en daarna nog terugleest wat hij terugkrijgt of waar ik net opdracht toe gegeven had, ook echt gebeurd is...

Gaat hier om: :P

[afbeelding]

Hah, leuk project. Persoonlijk zou ik dan voor Python gaan, erg veel modules voor te linken en OO programmeren is in Python ook erg simpel.

Ik heb in mijn eerste jaar ook veel met AVR studio gewerkt, echter ben ik daarna overgegaan op linux. AVR studio en linux is geen fijne combinatie, dus vandaar dat ik gewoon commandline avrdude en avr-gcc, etc (avr toolchain) gebruik.
 
Hah, leuk project. Persoonlijk zou ik dan voor Python gaan, erg veel modules voor te linken en OO programmeren is in Python ook erg simpel.

Ik heb in mijn eerste jaar ook veel met AVR studio gewerkt, echter ben ik daarna overgegaan op linux. AVR studio en linux is geen fijne combinatie, dus vandaar dat ik gewoon commandline avrdude en avr-gcc, etc (avr toolchain) gebruik.

Python zou ik mij dan eens in moeten verdiepen... Op zich volgensmij ook wel een taal die ik moet kunnen gaan gebruiken.. :P

Enne, linux wel is gebruikt, maar kost mij teveel moeite om de meest basisdingen te doen in linux haha :P
 
Hah, leuk project. Persoonlijk zou ik dan voor Python gaan, erg veel modules voor te linken en OO programmeren is in Python ook erg simpel.

Ik heb in mijn eerste jaar ook veel met AVR studio gewerkt, echter ben ik daarna overgegaan op linux. AVR studio en linux is geen fijne combinatie, dus vandaar dat ik gewoon commandline avrdude en avr-gcc, etc (avr toolchain) gebruik.

Waarom zou je voor embedded een andere taal dan C willen gebruiken?
 
Terug
Bovenaan Onderaan