Bürokraten, Oberflächenadministratoren, mitglieder, SMW-Administratoren, SMW-Kuratoren, Administratoren, vorstand
535
Bearbeitungen
Zero (Diskussion | Beiträge) (Bissl übersichtlicher gestaltet =)) |
(Added Arduino Temperatur Messung) |
||
Zeile 16: | Zeile 16: | ||
Der Elko sollte bei Überspannung so ungefähr mit dem LM317 zusammen sterben (40V für den LM gegen 50V für den Elko). Für die Minimallast kann eine Einschaltkontroll-LED des Verbrauchers sorgen wenn der echt wenig braucht. Der Elko kann ersatzlos weg oder gegen kleineren Typen getauscht werden. Dann kann auch bei Fehlern nicht zuerst mal der Elko wahnsinnig hohe Ströme an Verbraucher liefern, sondern die Strombegrenzung des LM wird sofort wirksam. [[Benutzer:Dg3hda|Dg3hda]] ([[Benutzer Diskussion:Dg3hda|Diskussion]]) 21:34, 27. Sep. 2015 (CEST) | Der Elko sollte bei Überspannung so ungefähr mit dem LM317 zusammen sterben (40V für den LM gegen 50V für den Elko). Für die Minimallast kann eine Einschaltkontroll-LED des Verbrauchers sorgen wenn der echt wenig braucht. Der Elko kann ersatzlos weg oder gegen kleineren Typen getauscht werden. Dann kann auch bei Fehlern nicht zuerst mal der Elko wahnsinnig hohe Ströme an Verbraucher liefern, sondern die Strombegrenzung des LM wird sofort wirksam. [[Benutzer:Dg3hda|Dg3hda]] ([[Benutzer Diskussion:Dg3hda|Diskussion]]) 21:34, 27. Sep. 2015 (CEST) | ||
== Einfache Temperaturmessung mit Arduino == | |||
Material: | |||
* Thermistor 10kΩ | |||
* Wiederstand 10kΩ | |||
* Arduino | |||
* Kabel + Breadboard | |||
[[Datei:Arduino temp.svg|rahmenlos]] | |||
Code: | |||
<pre> | |||
#include <math.h> //loads the more advanced math functions | |||
void setup() { //This function gets called when the Arduino starts | |||
Serial.begin(115200); //This code sets up the Serial port at 115200 baud rate | |||
} | |||
double Thermister(int RawADC) { //Function to perform the fancy math of the Steinhart-Hart equation | |||
double Temp; | |||
Temp = log(((10240000/RawADC) - 10000)); | |||
Temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * Temp * Temp ))* Temp ); | |||
Temp = Temp - 273.15; // Convert Kelvin to Celsius | |||
return Temp; | |||
} | |||
void loop() { //This function loops while the arduino is powered | |||
int val; //Create an integer variable | |||
double temp; //Variable to hold a temperature value | |||
val=analogRead(0); //Read the analog port 0 and store the value in val | |||
temp=Thermister(val); //Runs the fancy math on the raw analog value | |||
Serial.println(temp); //Print the value to the serial port | |||
delay(1000); //Wait one second before we do it again | |||
} | |||
</pre> | |||
Das ganze spuckt der Arduino nach dem Hochladen mit 115200 Baud auf die Serielle Schnittstelle, die man z.b. mit dem Serial Monitor der Arduino IDE einsehen kann. | |||
Oder ganz bequem vom Terminal aus: | |||
<pre> | |||
screen /dev/ttyACM0 115200 | |||
</pre> | |||
Hier evtl. die Schnittstelle anpassen (z.b. /dev/ttyUSB0 bei Verwendung eines USB Seriell Wandlers) |
Bearbeitungen