Änderungen

KY-027 Magic Light Cup Modul

1.211 Byte hinzugefügt, 16:54, 22. Mär. 2016
/* Codebeispiel Raspberry Pi */
==Technische Daten / Kurzbeschreibung==
Die LED wird bei Erschütterung an– oder ausgeschaltet. Das Signal, wann die LED an ist, wird an einen Signalausgang gegeben. Je nach Eingangsspannung, werden Vorwiderstände benötigt
 
'''<u>Vorwiderstand:</u>'''
 
'''Rf (3,3V) [<span style="color: #ff0000;">Rot</span>]= 120Ω'''
 
''[z.B. beim Einsatz mit ARM CPU-Kern basierten Mikrokontrollern wie <u>Raspberry-Pi</u>]''
 
 
'''Rf (5V) [<span style="color: #ff0000;">Rot</span>] = 220Ω''' 
 
''[z.B. beim Einsatz mit Atmel Atmega basierten Mikrokontrollern wie <u>Arduino</u>]''
==Pin-Belegung==
==Codebeispiel Arduino==
Hier bei handelt es sich um ein Beispielprogramm, welches die LED vom Magic-LightCup-Modul zum Leuchten bringt, wenn am Sensor eine Neigung detektiert wurde.  <pre class="brush:cpp">int LedPinA Led = 513 ;// Deklaration des LED-Ausgangspinint LedPinB Sensor = 610;// Deklaration des Sensor-Eingangspinint ButtonPinA = 7val;// Temporaere Variableint ButtonPinB = 4;int buttonStateA = 0;int buttonStateB = 0;int brightness = 0;
void setup ()
{
pinMode (LedPinALed, OUTPUT);// Initialisierung Ausgangspin pinMode (LedPinB, OUTPUT);pinMode (ButtonPinASensor, INPUT);// Initialisierung SensorpinpinMode digitalWrite(ButtonPinBSensor, INPUTHIGH);// Aktivierung interner Pull-Up Widerstand
}
void loop ()
{
buttonStateA val = digitalRead (ButtonPinASensor);// Das gegenwärtige Signal am Sensor wird ausgelesen if (buttonStateA val == HIGH && brightness! = 255)// Falls ein Signal erkannt werden konnte, wird die LED eingeschaltet. {brightness + + digitalWrite (Led, LOW); }buttonStateB = digitalRead (ButtonPinB);if (buttonStateB == HIGH && brightness! = 0) else {brightness -;}analogWrite digitalWrite (LedPinALed, brightness); / / A few Guan Yuan (ii)? analogWrite (LedPinB, 255 - brightnessHIGH);/ / B Yuan (ii) a few Bang?Delay (25); }
}
</pre>
 
'''Anschlussbelegung Arduino:'''
 
{| style="height: 58px; padding-left: 30px;" width="228"
|-
||LED +
||=
||[Pin 13]
|-
||LED -
||=
||[Pin GND]
|-
||Sensor Signal
||=
||[Pin 10]
|-
||Sensor +V
||=
||[Pin 5V]
|-
||Sensor -
||=
||[Pin GND]
|}
 
'''Beispielprogramm Download'''
 
[[Medium:SensorTest_Arduino.zip|SensorTest_Arduino.zip]]
==Codebeispiel Raspberry Pi==
Programmierbeispiel in der Programmiersprache Python
 
In diesem Programmbeispiel Leuchtet die LED auf, wenn am Neigungsschalter, ein Signal detektiert wird.
<pre class="brush:py"># Benoetigte Module werden importiert und eingerichtet
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
# Hier wird der Eingangs-Pin werden die beiden Pins deklariert, an dem der Sensor und die LED angeschlossen ist sind,GPIO_PIN LED_PIN = 24Sensor_PIN = 23GPIO.setup(GPIO_PINSensor_PIN, GPIO.IN)GPIO.setup(LED_PIN, GPIO.OUT) print "KYSensor-003 Test [druecken Sie STRG+C, um den Test zu beenden]"
# Diese AusgabeFunktion wird bei Signaldetektion ausgefuehrt
def ausgabeFunktion(null):
printGPIO.output("Signal erkannt"LED_PIN, True) # Beim Detektieren eines Signals (fallende Signalflanke) wird die Ausgabefunktion ausgeloestGPIO.add_event_detect(GPIO_PINSensor_PIN, GPIO.FALLING, callback=ausgabeFunktion, bouncetime=10010)
# Hauptprogrammschleife
try:
while True:
time.sleep(1) #Ausgang wird wieder zurueckgesetzt, falls der Neigungschalter wieder auf die andere Seite geneigt wird if GPIO.input(Sensor_PIN): GPIO.output(LED_PIN,False)
# Aufraeumarbeiten nachdem das Programm beendet wurde
except KeyboardInterrupt:
GPIO.cleanup()
 
</pre>
'''Anschlussbelegung Raspberry Pi:'''
{| style="height: 58px; padding-left: 30px;" width="228"
|-
||SignalLED
||=
||GPIO24
||[Pin 18]
|-
||Signal
||=
||GPIO23
||[Pin 16]
|-
||+V
||[Pin 6]
|}
 
'''Beispielprogramm Download'''
'''[[Medium:KY-003027-RPi-MagicLightCup.zip|KY-003027-RPi-MagicLightCup.zip]]'''
Zu starten mit dem Befehl:
<pre class="brush:bash">sudo python KY-003027-RPi-MagicLightCup.py
</pre>
Bürokrat, Administrator
611
Bearbeitungen