Reedrør

Fra HTX Arduino
Spring til navigation Spring til søgning
Billede af Reedrør modulet

Generelt om modulet

Inden i modulet sidder 2 ledninger som ikke har kontakt. Når en magnet kommer tæt på vil ledningerne komme i kontakt og man kan bruge modulet som en omgangstæller, hvor hver gang man bevæger magneten tæt på er en omgang. Et reedrør er en anden form for kontakt. Reedrøret kunne blandt andet bruges til en vindhastighedsmåler.

Modulet

Modulet er fra keyes-serien keyes-moduler, og har betegnelsen KY-021.

Ben-opsætning

Der er 3 forskellige ben, hvor + sidder på pin 9 (den midterste pin på illustration), stel sidder på pin 10 (det øverste ben) og til sidst vores digitale signal på pin 3. Det beskrives nærmere inde på diagrammet hvilken funktion det digitale signal har.

Pin Ben Egenskab
10 S Stel
9 2 +5V
3 - Digitalt signal

Forsøg 1

Vi lavede et forsøg med reedrøret for at se hvorvidt reedrør-modulet virkede som det skulle. Vores hypotese var at spændingen på grund af pullup modstanden skulle ændre sig på signalbenet når en magnet kom tæt på reedrøret. Det første "forsøg" var hvor vi ved hjælp af et voltmeter målte vi spændingen når der ikke var en magnet ved reedrøret. Når magneten kom tæt på reedrøret så vi så at spændingen ændrede sig helt ned til ~1.5 V

Diagram

Diagrammet for Reedrør modulet

På billedet til højre ses diagrammet for reedrørs modulet afbildet. Opsætningen af reedrørs boardet er sådan, at der er tre ben som tilsluttes på forskellig vis. Udover de tre ben, er der i kredsløbet en pull-down modstand og en reed-kontakt som ændrer tilstand udfra magnetisme.

Øverst på diagrammet ses stel, som oftest er tilsluttet til pin-10 på PIC'en. Stel-benet bliver sat til det første ben på reedrørs boardet, altså det øverste ben. På det midterste ben på reedrørs boardet bliver de 5 volts spænding sat til pin-9 på PIC'en. På det nederste af de tre ben på reedrørsboardet, er det pin-3 på PIC'en som tilsluttes. Den funktion som det nederste ben har, er at der sende et digitalt signal tilbage til PIC'en, når reed-kontakten er tilsluttet.

Reedrøret

Selve reedrøret på reedrørsmodulet er en kontakt som fungerer ved at blive påvirket af magnetisme. Det stadie som reedrøret som standard er indstillet til, er at den ikke er tilsluttet, og der derfor ikke løber en strøm gennem hele reedrørsmodulet. Når man ved hjælp af en magnet påvirker reedrøret med magnetisme, så bliver reedrørs-kontakten tilsluttet og der kan løbe en strøm gennem hele modulet. Når der løber en strøm gennem hele modulet, så giver det mulighed for boardet at sende et digitalt signal gennem det ben 3 (det nederste ben) på modulet.

Digital signal

Det digitale signal bliver, som beskrevet ved reedrøret, tilsluttet når der er magnetisme tilstede, da der først løber en strøm ud til det digitale signal når reedrøret bliver tilsluttet vha. magnetisme. Det digitale signal fungerer på den måde, at der sendes et digitalt signal tilbage til PIC'en når magneten er i nærheden af selve reedrøret. Det digitale signal kan derefter fortolkes af PIC'en og det er derved muligt at få en handling til at ske.

Programmering

Princippet i at programmere reedrøret, er at PIC'en skal opfange spændingsforskellen på den pin som har fat i digital signalet (3. ben på modulet). Da magneten skaber forbindelse, vil man kunne se en spændingsforskel når en magnet kommer tæt på. Dette tælles op i programmet, sådan så at hver gang spændingen på digital benet ændres, ved at magneten er tæt ved reedrøret, så kunne der f.eks. tælles at der en "omgang". Dette vil kunne programmeres således som det ses i nedenstående pseudokode.

Hvis det digitale signal er lav og det digitale signal sidst var højt, så
   husk lav
   ændrer variablen omgang med 1 
ellers 
   husk høj
   ændrer variablen omgang med 0.

Der kan vha. variablen omgang tjekkes efter hvor mange gange magneten har været i nærheden af reedrøret. Dette kunne eventuelt udvides ved at tjekke efter om at der efter 5 omgange skulle lyse en diode sådan at der indikeres hvor mange gange magneten har været i nærheden af reedrøret. En sådan kode kunne skrives således:

Hvis variablen omgang har værdien 5 eller over, så
   set benet til dioden på høj
Ellers 
   set benet til dioden på lav.


Moduler på Holstebro HTX
Tastaturer Displays AD-konvertering I/O-ekspander Serielt Interface Færdige Andre
RC-tast - AD-tast - M_tast ALCD - LCD ADC_holst - ADC
mcp3201 - mcp3208
input - output Seriel_holst - Serial hardware
Serial hw int cts - Serial software
Stepmotor - RFID
RGB - RF-link - Afstand
Humidity - Analog temp - Dig temp
Accelerometer
Rotary Encoder

Oversigt over Hardware Moduler på Holstebro HTX

Keyes-moduler på Holstebro HTX
Simple Digitale Input Switch modul - Reedrør - Hall sensor - Optisk Skift - Photo Gate - Vibration sensor - Vibration switch - Tilt sensor - Kviksølv kontakt - Linje følger
Digitalt kodede Input IR Modtager - Humidity -Digital Temperatur
5 benede Input Rotary Encoder -XY Joystick
Digitale 4 benede Input Magic Cup Light - LED 3-farve - RGB - RF-link - Afstand
Justerbare analoge/digitale Input Reed Magnetsensor - Temperatur Niveau - Metal detektor - Flamme - Hall Kontakt - Almindelig Mikrofon - Følsom Mikrofon
Simple digitale Output LED 2-farve - Aktiv Buzzer - Blink LED - IR LED - Laser - Relæ modul - Passiv Buzzer
Analoge input Analog Temperatur - LDR - Finger Pulsmåler - Lineær Magnetfelt