Het maken van een KlikaanKlikuit Arduino, Hoe?

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
Ik ben al een lange tijd bezig met het maken van dingen uit de Efteling. In de Efteling bewegen er veel poppen en andere dingen. Ik weet ook hoe die bewegingen werken en hoe je die kan maken. het werkt met een motor die allemaal houten schijven aandrijft die een bepaald verloop hebben (ze zijn niet helemaal rond maar er zitten hobbels in). Over die schijven lopen dan wieltjes en door dat verloop gaan die wieltjes op en neer. De wieltjes zijn verbonden aan fietsremkabels die vervolgens ook op en neer gaan waardoor er een beweging onstaat. Met een soort gelijk systeem ben ik nu bezig. het zou me heel gaaf lijken als die motor automatisch kan worden gestart door een druk op de knop.

Hierbij dacht ik dus aan van die setjes van de action, blokker , bouwmarkt, etc. Op dit forum las ik dus dat dit ook samen kan werken met arduino en daarover heb ik een aantal vragen.

Laten we beginnen bij tot nu toe de belangrijkste. Wat heb ik allemaal nodig?
Na wat research op het internet kwam ik op de volgende dingen:
- Drukknopjes
- klik aan klik uit Setje
- een 433 mhz transmitter
- een arduino
- breadboard (en kabeltjes)

En volgens mij was het dat tot nu toe maar als ik iets vergeten ben hoor ik het graag!

Het moet dus ongeveer zo worden:
Knopje word ingedrukt. Klik aan klik uit gaat aan. In de klik aan klik uit zit de stekker van het motortje die gaat draaien waardoor de beweging ontstaat. Na een aantal seconden gaat de klik aan klik uit weer uit.


Is dit allereerst mogelijk met de arduino? Zo ja, hoe moet ik dit aansluiten op een arduino want dat kan ik nergens op google vinden. En hoe ga ik dit programmeren?

Hopelijk kunnen jullie mij verder helpen.

Alvast bedankt!
Daan

Acties:
  • 0 Henk 'm!

  • corset
  • Registratie: November 2009
  • Laatst online: 02-05 06:00
Wat heb je zelf al gezocht?
Wat heb je al geprobeerd?

etc
etc

Ik mis eigen input :-(

"Whatever their future, at the dawn of their lives, men seek a noble vision of man’s nature and of life’s potential."


Acties:
  • 0 Henk 'm!

  • ThinkPad
  • Registratie: Juni 2005
  • Nu online
Waarom wil je het met 433Mhz spul doen? Je kunt met wat randonderdelen een motortje ook rechtstreeks met Arduino aansturen namelijk :? https://learn.adafruit.co...son-13-dc-motors/overview

Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
Dat komt omdat het motortje nu al werkt met een adapter dus daarom leek mij dit handiger. Het is waarschijnlijk ook zo dat de drukknop een paar meter van de motor afkomt. daarom sprak mij het draadloze wel aan. Vandaar ;)

Opzich zou dit ook kunnen maar ik zou toch liever eerst voor het 433 mhz idee willen gaan. Lukt dat niet lijkt me dit een zeer geschikte 2de oplossing :)

[ Voor 55% gewijzigd door Daanvk op 03-07-2015 11:36 ]


Acties:
  • 0 Henk 'm!

  • DurkVell
  • Registratie: Augustus 2011
  • Laatst online: 01-05 10:39
De adapter van de motor in klik-aan-klik-uit schakelaar en bedienen met de standaard klik-aan-klik-uit afstandsbediening en klaar ben je. Helemaal geen Arduino nodig.

Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
Maar hij moet na een paar seconden weer automatisch worden gestopt en dat kunnen die setjes niet. is er daarvoor toch een arduino nodig of kan dit ook anders?

[ Voor 20% gewijzigd door Daanvk op 03-07-2015 12:04 ]


Acties:
  • 0 Henk 'm!

  • memphis
  • Registratie: Oktober 2000
  • Laatst online: 22:40

memphis

48k was toen meer dan genoeg.

Er zijn mensen die mij een GOD vinden


Acties:
  • 0 Henk 'm!

  • g0tanks
  • Registratie: Oktober 2008
  • Laatst online: 00:22

g0tanks

Moderator CSA

Ultrawide gaming setup: AMD Ryzen 7 2700X | NVIDIA GeForce RTX 2080 | Dell Alienware AW3418DW


Acties:
  • 0 Henk 'm!

  • pacificocean
  • Registratie: Mei 2006
  • Laatst online: 03-05 17:26
Zelf hier op tweakers was dat al opgelost:
433MHz-communicatie met microcontrollers

Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
Deze heb ik al gelezen. Daardoor snap ik het al redelijk, alleen is het dus eigenlijk de vraag. Hoe combineer ik zoiets met een drukknop? en wat moet ik in de code veranderen?

Dus als iemand het antwoord op die vragen heeft weet ik denk ik genoeg i.c.m. de websites die jullie aangeven. :)

Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
En raden jullie een neppe of een echte arduino aan? Wat is het verschil? Kan een neppe draaien met de normale arduino software of heeft het andere nodig?

Acties:
  • 0 Henk 'm!

  • lordprimoz
  • Registratie: November 2013
  • Laatst online: 01-05 17:46
Daanvk schreef op vrijdag 03 juli 2015 @ 16:08:
En raden jullie een neppe of een echte arduino aan? Wat is het verschil? Kan een neppe draaien met de normale arduino software of heeft het andere nodig?
een neppe arduino draait inderdaad dezelfde software. Verschil kan zitten in de driver die je moet installeren.

Bij de namaak is de kwaliteit niet gegarandeerd. Overigens, je kan 3+ namaak kopen voor de prijs van 1 echte, dus aan jou de keuze.

Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
oke, dus bijna geen verschil. Zou dit een goede zijn?
http://www.ebay.com/itm/S...ain_0&hash=item4611f1b284

Zou iemand misschien het cirquit willen uittekenen met druk knop erbij. Want ik weet niet hoe je dat dan moet aansluiten i.c.m. een 433 mhz transmitter.

Acties:
  • 0 Henk 'm!

  • AllesKan
  • Registratie: Juli 2011
  • Laatst online: 29-05-2023

Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
dus alles onder elkaar:
-Een goedkope arduino van ebay.
-Drukknopjes http://www.ebay.nl/itm/14..._trksid=p3984.m1497.l2649 (zijn deze goed want er staat bij 12v en de adruino levert 5 v)
- transmitter http://www.ebay.nl/itm/NE...in_77&hash=item51ce28ac96
- breadboard: http://www.ebay.com/itm/M...ain_0&hash=item2a486aa59e
- setje klik aan klik uit.

Zijn er verder nog dingen als weerstanden nodig of werkt dit als ik het aansluit aan elkaar?

Acties:
  • 0 Henk 'm!

  • WK100
  • Registratie: Februari 2011
  • Laatst online: 03-05 12:01
Is dit niet mogelijk met basis elektronica ipv. een compleet software (processor) georiënteerd systeem?

Om het simpel te houden:

Schakelaar -> Relais -> Relais koppelt stroom door naar motor -> Schakelaar gaat na x seconden uit -> Relais uit -> Motor uit

Acties:
  • 0 Henk 'm!

  • memphis
  • Registratie: Oktober 2000
  • Laatst online: 22:40

memphis

48k was toen meer dan genoeg.

En gezien de vragen zoals een 12v schakelaar op 5v en of er nog weerstanden nodig zijn vrees ik dat ook dat te hoog gegrepen is, ik gaf al een timer aan maar daar is geheel aan voorbij gegaan.
En zo'n breadboard is leuk om op te experimenteren maar wil je een vaste opstelling zal je toch wat anders moeten verzinnen, dan lijkt een arduino mini met een stuk gaatjesprint de betere keuze.

En als het kaku moet zijn, waarom dan niet een complete schakelaar kopen:
http://www.klikaanklikuit...wandschakelaar-awst-8800/
Met ingebouwde timer....

Er zijn mensen die mij een GOD vinden


Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
memphis schreef op vrijdag 03 juli 2015 @ 19:48:
En als het kaku moet zijn, waarom dan niet een complete schakelaar kopen:
http://www.klikaanklikuit...wandschakelaar-awst-8800/
Met ingebouwde timer....
Dat is eigenlijk ook een best goed idee. Ik denk dat ik zoiets ga gebruiken.

dankjewel allemaal! :)

Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
Hallo,

Inmiddels toch al wat dingen geprobeert met mijn pas aangeschafte arduino :)

Nu probeer ik dus via een drukknopje een 433 mhz signaal te versturen.. Zonder het knopje werkt het en gaat de KAKU aan maar met het knopje niet :? Ik snap nu niet zo goed wat er verkeerd zit in de code. Ik heb zeg maar een code van een button en led gemixt met een KAKU code. Misschien kan dit wel helemaal niet en is dat het probleem. hopelijk zien jullie het probleem?

Hier is mijn code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();

int button = 2;

void setup() {

  Serial.begin(9600); 
  mySwitch.enableTransmit(10);
  pinMode(button,OUTPUT); 
}

void loop() {
  if(digitalRead(button) == HIGH)
  {
  mySwitch.send(9574447, 24);
  delay(27000);  
  mySwitch.send(9574446, 24); 
  }else
  {
  mySwitch.send(9574446, 24); 
  }
}


Alvast bedankt!

Acties:
  • 0 Henk 'm!

  • ResuCigam
  • Registratie: Maart 2005
  • Laatst online: 02-05 13:31

ResuCigam

BOFH

Daanvk schreef op dinsdag 04 augustus 2015 @ 16:53:
hopelijk zien jullie het probleem?

Alvast bedankt!
Ik ben geen ervaren programmeur maar ik zie hier wel iets: Je gebruikt een delay(27000), dit houdt in dat je hele arduino zo'n beetje 27 seconden praktisch nergens op reageert, daarna kijkt hij een microseconde naar de knop en wacht weer 27 seconden... Dus dan wordt het heel lastig om op de knop te drukken. Kijk eens in je Arduino IDE onder voorbeelden --> 2. digitaal --> Blink without delay.

We do what we must because we can.


Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
Het is de bedoeling dat hij 27 seconden wacht en dat er dan niet kan worden gedrukt op de knop. Maar het is idd lastig als hij de knop maar 1 milliseconde uitleest.

Nu heb ik de delay even weggehaald en zelfs dan doet hij niets. Ik denk dus dat dit niet het probleem is.

iemand anders misschien?

[ Voor 4% gewijzigd door Daanvk op 04-08-2015 17:07 ]


Acties:
  • 0 Henk 'm!

  • LED-Maniak
  • Registratie: Oktober 2003
  • Laatst online: 00:18
Bekijk dit eens:
pinMode(button,OUTPUT);
if(digitalRead(button) == HIGH)
Wat gaat er mis?

Mitsubishi Electric & Heavy Industries externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl


Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
Dat is inderdaad een beetje dom van mij 8)7

Gek genoeg werkt het nog niet :/

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();

int button = 2;

void setup() {

  Serial.begin(9600); 
  mySwitch.enableTransmit(10);
  pinMode(button,INPUT); 
}

void loop() {
  if(digitalRead(button) == HIGH)
  {
  mySwitch.send(9574447, 24);
  }else
  {
  mySwitch.send(9574446, 24); 
  }
}


Wat gaat er mis :?

Acties:
  • 0 Henk 'm!

  • AllesKan
  • Registratie: Juli 2011
  • Laatst online: 29-05-2023
Probeer dit eens:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();

int button = 2;

void setup() {
  Serial.begin(9600); 
  mySwitch.enableTransmit(10);
  pinMode(button,INPUT); 
  digitalWrite(button, HIGH); // dit zet de interne pullup weerstand aan, zodat deze pin via een weerstand met de +5V wordt verbonden.
}

void loop() {
  if(!digitalRead(button)) { // als je de knop niet indrukt, zou hij hier door de pullup weerstand een 1 moeten lezen, als hij een 0 leest heb je dus de ingang via de knop aan massa gelegd.
    Serial.println("Knop is ingedrukt...");
    mySwitch.send(9574447, 24);
    delay(27000);
    mySwitch.send(9574446, 24); 
  }
}


NB: Ga ik er wel vanuit dat je de druktoets tussen pin 2 en massa hebt zitten.

Acties:
  • 0 Henk 'm!

  • LED-Maniak
  • Registratie: Oktober 2003
  • Laatst online: 00:18
Als het bovenstaande niet is dan ben ik benieuwd naar een schema hoe je het hebt aangesloten. :)

Mitsubishi Electric & Heavy Industries externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl


Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
De code werkt helaas niet. De drukknop is zo aangesloten (met een 10k weerstand)

Afbeeldingslocatie: http://i58.tinypic.com/1p8htk.png

Zit hier dan de fout? deze aansluiting werkte wel bij een ledje dus dat lijkt me vreemd. We zullen zien!

Alvast bedankt! ;)

[ Voor 3% gewijzigd door Daanvk op 04-08-2015 19:58 ]


Acties:
  • 0 Henk 'm!

  • LED-Maniak
  • Registratie: Oktober 2003
  • Laatst online: 00:18
Weerstand naar Vcc trekken(pull-up). Dan gaat het vast goed.

Mitsubishi Electric & Heavy Industries externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl


Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
vcc? is dat +? ik ben nog redelijk nieuw in de wereld van arduino ;)

Acties:
  • 0 Henk 'm!

  • LED-Maniak
  • Registratie: Oktober 2003
  • Laatst online: 00:18
Plus -> weerstand -> schakelaar ene kant -> schakelaar pin aan arduino
schakelaar andere kant -> Min

Mitsubishi Electric & Heavy Industries externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl


Acties:
  • 0 Henk 'm!

  • AllesKan
  • Registratie: Juli 2011
  • Laatst online: 29-05-2023
Weerstand kan er gewoon uit.

Pin 2 -> schakelaar
Andere pin van schakelaar -> GND

Verder niks aansluiten.

[ Voor 15% gewijzigd door AllesKan op 04-08-2015 20:31 ]


Acties:
  • 0 Henk 'm!

  • Daanvk
  • Registratie: Juli 2015
  • Laatst online: 02-05 20:31
:D En hij werkt! Bedankt allemaal!

Acties:
  • 0 Henk 'm!

  • AllesKan
  • Registratie: Juli 2011
  • Laatst online: 29-05-2023
Mooi zo.

Overigens, dit:

code:
1
  if (!digitalRead(button))


is hetzelfde als dit:

code:
1
  if (digitalRead(button) == LOW)


Zo is het misschien wat begrijpelijker.

Acties:
  • 0 Henk 'm!

  • LED-Maniak
  • Registratie: Oktober 2003
  • Laatst online: 00:18
AllesKan schreef op dinsdag 04 augustus 2015 @ 20:31:
Weerstand kan er gewoon uit.

Pin 2 -> schakelaar
Andere pin van schakelaar -> GND

Verder niks aansluiten.
Gezien hij nog wat onzeker aan het devven is zou ik eerder een weerstand 390 Ohm tussen schakelaar en poort zetten. Zo zonde als je de arduino opblaast door hem een uitgang te maken en short te trekken ;)

Mitsubishi Electric & Heavy Industries externe temperatuur sensor (Home Assistant compatible): V&A - ClimaControl


Acties:
  • 0 Henk 'm!

  • AllesKan
  • Registratie: Juli 2011
  • Laatst online: 29-05-2023
LED-Maniak schreef op dinsdag 04 augustus 2015 @ 21:43:
Gezien hij nog wat onzeker aan het devven is zou ik eerder een weerstand 390 Ohm tussen schakelaar en poort zetten. Zo zonde als je de arduino opblaast door hem een uitgang te maken en short te trekken ;)
Edit: Nevermind.

Dat zou inderdaad veiliger zijn. :)

[ Voor 30% gewijzigd door AllesKan op 04-08-2015 21:49 ]


Acties:
  • 0 Henk 'm!

  • fotoklaasje
  • Registratie: April 2006
  • Laatst online: 19-03-2024
Met deze code staat je arduino wel constant "uit" te zenden als de knop niet is ingedrukt, dat wil je niet. Misschien beter de knop een variabele laten aanpassen, en alleen bij een state change daarvan te zenden?

http://www.klaasje.com


Acties:
  • 0 Henk 'm!

  • Valen_76
  • Registratie: Oktober 2009
  • Laatst online: 19-04 19:28
AllesKan schreef op dinsdag 04 augustus 2015 @ 17:28:...
code:
1
2
3
4
5
6
7
8
...
void setup() {
  Serial.begin(9600); 
  mySwitch.enableTransmit(10);
  pinMode(button,INPUT); 
  digitalWrite(button, HIGH); // dit zet de interne pullup weerstand aan, zodat deze pin via een weerstand met de +5V wordt verbonden.
}
...


NB: Ga ik er wel vanuit dat je de druktoets tussen pin 2 en massa hebt zitten.
Kan korter: Slechts pinMode(button, INPUT_PULLUP) gebruiken zet de interne pullup weerstand aan en behoud de input-functie. digitalWrite(button,HIGH) is dan overbodig, of zou het zelfs weer als output instellen.

https://www.arduino.cc/en/Reference/PinMode

Om schakelaar-stuitering (dendering) te voorkomen ook nog een condensatortje tussen gnd en de input pin.

Acties:
  • 0 Henk 'm!

  • AllesKan
  • Registratie: Juli 2011
  • Laatst online: 29-05-2023
Valen_76 schreef op maandag 10 augustus 2015 @ 15:43:
Kan korter: Slechts pinMode(button, INPUT_PULLUP) gebruiken zet de interne pullup weerstand aan en behoud de input-functie. digitalWrite(button,HIGH) is dan overbodig, of zou het zelfs weer als output instellen.
Dat het korter kan weet ik. Dat dikgedrukte stuk is overigens onjuist.
Om schakelaar-stuitering (dendering) te voorkomen ook nog een condensatortje tussen gnd en de input pin.
Als een schakelaar na een delay van 27 seconden nog steeds aan het denderen is gaat een condensatortje je niet helpen. ;)
Pagina: 1