06 oktober 2015

Tutorial 3 - Analoge inputs deel 2

Potentiometer

Het vorige experiment kan in plaats van een LDR natuurlijk ook een potentiometer gebruiken. Elektrisch gezien is er geen verschil, alleen de "bediening" is anders. Bij een LDR zorgt de hoeveelheid licht voor de weerstandswaarde, bij een potmeter de positie van een loper op een weerstandsbaan. Deze positie (en daarmee de weerstandswaarde) wordt middels draaiing of heen- en weer schuiven bereikt. Sluit de gele draad niet langer aan op de "LDR" connector, maar op de "POT". Het programma blijft hetzelfde.


Temperatuur

Het volgende experiment is eenvoudig: het de bedoeling, dat de temperatuur uitgelezen wordt. Verwijder hiervoor de rode en groene draden van het vorige experiment (die van C.0 en C.4 naar de rode en groene LED), en verhuis de gele draad van de uitgangsconnector "LDR" naar "TMP". Zie onder:

Temperatuur uitlezen wordt gedaan middels het readtemp commando. Dit commando leest de temperatuur van een DS18B20 temperatuursensor uit in hele graden Celsius. Er zit zo'n sensor op het AXE091 bordje (op bovenstaande foto: links boven, met de aanduiding DS18B20 links naast het device zelf), maar hij is ook omhuld, met een draad te krijgen:

Vervolgens is het natuurlijk aardig om te weten hoe hoog de temperatuur is. Dit kan met het sertxd commando (sertxd = serial transmit data). In de Programming Editor zit een terminal programma ingebouwd (F8, of PICAXE, Terminal uit het menu). Stel dat in op een Baud Rate van 4800.


Programma

Het programma is al even simpel als de opzet:
; connect C.1 (physical pin 6) to TMP symbol TMP = C.1 ; define pin 6 with the name "TMP" ; set picaxe type #picaxe 08m2 main: readtemp TMP,b0 ; read ADC1 into variable b0 ; if you want a real time feedback of the actual vaules, use ; debug b0 sertxd("Gelezen temperatuur: ", #b0, cr, lf) pause 1000 goto main ; jump back to start

Uitvoer

Deze keer geen video, maar een schermdump van het terminal programma. Hierin is het effect te zien van het aanraken van de DS18B20:
Jawel; ik heb warme vingers ;)

Geen opmerkingen :

Een reactie posten