Stap 6: Elektronische schakeling en software
Materiaal:
-1 x 1 K Ohm weerstand 1 / 8 watt
-1 x 1N4001 gelijkrichter diode
-1 x Transistor NPN BD135
-2 x speelgoed motoren
-1 x standaard servomotor
-1 x ultrasone afstandssensor:
-Plaat 1 x stap Lab, met de Basic Stamp-microcontroller
-1 x 6V batterij (4pilhas seriële) of een 9V batterij
-Kabels, batterij connector
Het circuit werkt als volgt:
Wanneer ingeschakeld, controleert de sensor of er iets op een afstand van minder dan 1,75 meter (de maximale afstand die kan worden gemeten met deze sensor is 2 meter). Zo ja, activeert de microcontroller de servomotor van de leisteen (eerst sluiten en vervolgens te openen). De pin 0 uitgang op een hoog niveau en vervolgens de transistor, die functioneert als een sleutel het circuit sluit, waardoor de motoren hebben geplaatst sluit en verbonden blijven gedurende ongeveer 2 seconden (tijd instelbaar). Het momentum dat ze krijgen is genoeg om hen te houden lopen voor nog 10 seconden.
Nadat de microcontroller van een pauze voor een paar seconden (ingesteld op een 5), terug naar de lezing en de cyclus herhaalt.
Software:
symbool lig = bit0
symbool rotor = w3
uitgang van 0 ' pino nul = saída - motores
uitgang 1 ' pino 1 = saída - claquete
ingang 2 ' pino 2 = entrada - sensor
lus: ' rotina doen sensor
pulsin 2,1, w2 ' meed pulso doen sonar
W2 = w2 * 34 ' do doen som = 340m/s
W2 = w2/2 ' o tempo medido é de ida e volta
W2 = w2/100 ' acerto nb escala
pin0 = 0 ' coloca level baixo geen pino nul, desativando os motores
Als w2 < = 175 goto claquete ' se distância menor que 1, 75m, ativa claquete
goto lus
claquete: ' movimento da claquete
ligadao: ' rotina doen servomotor
voor de rotor = 1 tot en met 30
pulsout 1150
onderbreken van 10
volgende
onderbreken van 10
voor de rotor = 1 tot en met 30
pulsout 1240
onderbreken van 10
volgende
' Rolo de filme
pin0 = 1 ' ativa o filme de rolo
onderbreken van 2000 ' ligado por 2 segundos
pin0 = 0 ' para o rolo de filme
3000 onderbreken ' aguarda 4 segundos
W2 = 0 ' zera o valor da distância
onderbreken van 1000 ' aguarda 1 segundo
goto lus ' retorna een leitura doen sensor
OBS.: de servo kunt verplaatsen naar de motoren opstarten vanwege hun behandeling van de borstels, die genereren van voorbijgaande aard. Als dit gebeurt, zomaar een 1000 microfarad Elektrolytische condensator / 12 V in parallel met de power supply.
De Raad van bestuur stap Lab heeft een spanningsregelaar die ongeveer 20 volt toegepast op haar input steunt. Het circuit kan worden gevoed rechtstreeks uit deze bron, omdat de Raad van bestuur heeft een DC uitgang en een voor het voederen van de 5V microcontroller. Er is ook een breadboard waar ik alle onderdelen aangesloten en jumpers aangedrongen.
Het circuit zou kunnen hebben gedaan op andere manieren in plaats van met behulp van de ultrasone sensor, met behulp van een licht sensor (LDR) die veel goedkoper is. Echter verschillen in helderheid kunnen invloed hebben op het circuit een beetje en daar zou moeten altijd worden correcties.
Ik liever met een microcontroller, zoals we meer flexibiliteit hebben. Een verandering in de lengte van de tijd die motoren worden uitgevoerd wordt gedaan via software zonder te verbreken om het even wat. Als het een analoge schakeling, zou veel moeilijker zijn.