CO2 Laser Wasser Strömungswächter - Arduino Powered / Windows gesteuert (5 / 7 schritt)

Schritt 5: Programm der Arudino...

Sie können nun schließen Sie die Box an jedem beliebigen Punkt aber es möglicherweise einfacher, Probleme zu debuggen, wenn Sie zuerst die Arduino Programm. Die Skizze ist als CO2WaterFlowMonitor.ino beigefügt.

CO2WaterFlowMonitor.ino mit dem Arduino-Compiler zu öffnen, schließen Sie den USB-Anschluss am Computer und der Upload-Taste in die Arduino-Software. Das ist alles, was es ist-es sei denn, Sie wollen lernen, wie es funktioniert...

Grundlagen

Erstens, wir wollen Dinge so einfach wie möglich zu halten. Wir zeigen, was jeder Stift an der Spitze der Skizze mit einem Makro tut. Der EEPROM.h-Header wird für unsere EEPROM-Einstellung der Durchflussmenge verwendet. Dies bedeutet, dass die Kraft, ein- und Ausschalten gehen kann, aber die Einstellung bleibt.


Lesen Sie den Wasser-Flow-Sensor

Der Arduino Interrupt 0 dient uns dazu, zählt die Impulse aus den Wasser-Durchfluss-Sensor. Dazu müssen wir zuerst ein paar globale Variablen setup, und erstellen Sie eine sehr grundlegende Interrupt Service Routine (ISR), die G_uiFlowDetect Beulen, jedes Mal, wenn ein Impuls von den Wasser-Durchfluss-Sensor erkannt wird.

Setup

Alle Arduino-Sketch hat eine Setup. Bei uns werden wir...

-Jeder Pin auf den richtigen Modus einstellen...

-Setup serielle Ausgabe der Windows-Software gelesen, und unsere erste Botschaft übermitteln...

-Schalten Sie (COM NC1) jedes Relais und dann Stille des Summers (Linie 55)...

-Anhängen Sie unsere ISR (Flow zu erkennen), um 0 (PIN 2) zu unterbrechen, und deaktivieren Sie vorübergehend die Interrupts...

-Gelesen Sie die Alarmschwelle aus dem EEPROM, oder "brennen Sie" in wenn man nicht da war...

Als nächstes wird die Hauptschleife verwendet werden, zu erkennen und Ausgabe (in der USB-Schnittstelle) der Volumenstrom, festlegen und den Alarm zu löschen, fällt die Rate unter der Schwelle und eingabebereit um die Schwelle von der Windows-Software zu ändern. Um dies zu erreichen werden die folgenden Hilfsfunktionen eingeführt...

UpdateThreshold

Diese Funktion dient den neue Schwellenwert in der EEPROM Speicher speichern und senden Sie eine Meldung, die Änderung der Windows-Software.

Kommunikation mit der Windows-Software über WriteOutput und Erkennung von Laserleistung

Diese Funktion sendet die Status-Updates auf der Windows-Software. Das Format ist kurz und einfach. Wenn die Zeile mit einem Sternchen beginnt, bedeutet dies, dass jeder Alarm zum Schweigen gebracht werden wird, da die Laserleistung deaktiviert ist. Nach macht Lasererkennung PIN 8 lesen senden wir der aktuelle Durchflussmenge einen Schrägstrich, und dann die aktuellen Alarmschwelle. Diese Zahlen sind in Viertel-Sekunden.

Der Main Loop - Erfassung der Flussrate während des Wartens auf Input von der Windows-Software

Am oberen Rand der Hauptschleife ist die Flow Rate Variable gelöscht (während Interrupts deaktiviert sind). Interrupts sind dann aktiviert und ein 1/4 Sekunde warten vom USB-Port (per Windows-Software) für die serielle Eingabe eingegeben wird. Während dieser 250 Millisekunden "warten" werden alle Impulse aus dem Wasser Flow Rate Sensor Flow Rate Zähler erhöht, unter Berufung auf die ISR.

In Zeile 117 überprüfen wir, wenn die Windows-Software eine neue Schwelle (ein single-Byte-Wert mit die neue Schwelle) gesendet. Wenn ja, wird bRC (für ein Byte) auf 1 festgelegt werden. In diesem Fall wird UpdateThreshold() aufgerufen, und die Schleife wird neu gestartet. Das hält uns signalisiert einen Alarm wegen der unterbrochenen 250 ms warten.

Setzen und Löschen des Alarms

In die letzten Hälfte der Hauptschleife, die der Schwellenwert verglichen wird, um den Durchfluss und wenn es unter dem Zinssatz für fällt, dass 1/4 Sekunde, wird der Alarm ertönte und das Relais geschaltet...

In Zeile 131 testen wir, ob der Durchfluss ist kleiner als der Schwellenwert. Wenn es ist überprüfen wir, ob das Laser-System macht, ist durch die Prüfung ENABLE_ALARM_PIN (Linie 134). Wenn der Alarm aktiviert ist, der Summer ertönt (Linie 136), ansonsten (Linie 140) es wird zum Schweigen gebracht.

Linien 142 bis 145 verursachen jedes Relais zum COM NC1 (normalerweise geschlossen) herstellen. Das Deaktivieren des Lasers. Eine Linie 146 der Status wird gesendet, um die Windows-Software und dann auf Linie 147 die Schleife recycelt.

Wenn der Alarm nicht ausgelöst wird der Code fällt durch Linie 149 wo der Summer verstummt und jedes Relais schaltet zum COM herstellen keine (Schließer), so dass des Lasers. Die Schleife endet schließlich auf Linie 154 indem man den Status der Windows-Software.

In Verbindung stehende Artikel

CARduino - Arduino-Powered, LabVIEW-gesteuerte Fahrzeug

CARduino - Arduino-Powered, LabVIEW-gesteuerte Fahrzeug

Die CARduino ist eine ferngesteuerte Fahrzeug, das von einem Controller befestigt an einem Computer unter LabVIEW gesteuert wird. Das Fahrzeug wird von der Arduino angetrieben und kann durch die Zugabe von Sensoren oder anderen Geräten erweitert werd
CO2 Laser-Wasserkühler

CO2 Laser-Wasserkühler

CO2 Laser WasserkühlerCO2 Laserröhren sind durch laufen oder Pumpen von Wasser durch das Rohr gekühlt. Dies ist notwendig, um die Lebensdauer der Röhre die sonst überhitzen und macht schnell verlieren und schließlich nicht funktionieren würde. Teures
Gewusst wie: CO2-Laser-Energie auf eine Laser-Gravur-Maschine und Laserschneidanlage verwenden einen vereinfachte (low-cost) CO2-Laser-Leistungsmesser messen

Gewusst wie: CO2-Laser-Energie auf eine Laser-Gravur-Maschine und Laserschneidanlage verwenden einen vereinfachte (low-cost) CO2-Laser-Leistungsmesser messen

am meisten CO2-Laser-Leistungsmesser sind sehr teuer und sind ausgestattet mit Funktionen weit über das hinaus, was die gemeinsame Laser Maschine Betreiber/Besitzer braucht.  Diese Anleitungen zeigen eine Sub-$ 100 Laser Power Meter Sonde bei der Arb
Acryl-Aquarium mit Arduino Powered Feeder

Acryl-Aquarium mit Arduino Powered Feeder

Wollten Sie schon immer mehr Hände auf Gefühl, wenn ein Fisch? Oder wollte etwas anders als die durchschnittliche Aquarien in den Läden gefunden? Dieses Aquarium ist vollständig angepasst und kann geändert werden, auf Ihre Größe zugeschnitten und hat
CO2-Laser, das Blech schneidet

CO2-Laser, das Blech schneidet

Bitte beachten Sie: Ich bin wirklich nicht im Wettbewerb um den Laser zu gewinnen, ein T-shirt wäre in Ordnung, danke.Ich sah die Konkurrenz und dachte, es wäre lustig, mein System zu zeigen.Einführung. Die Grundidee dieses CO2-Laser Systems ist, das
Wie mit einer Lasersonde macht 200 Watt CO2 CO2-Laser-Energie messen

Wie mit einer Lasersonde macht 200 Watt CO2 CO2-Laser-Energie messen

dieses Video veranschaulicht die Mahoney CO2 Laser Power Probe verwenden.  Die CO2-Laser Power Probe ist eine häufig verwendete und notwendige Gerät:1. Messen Laserleistung für Lasereinstellungen im Laufe der Zeit. Ob Sie ein RF (Radio Frequency) bes
Arduino powered LED Uhr

Arduino powered LED Uhr

Ein Spaß, einfache LED-Uhr, die Ihnen die Zeit auf die nächste halbe Stunde mit einfarbigen LEDs geben wird. Benötigten Teile sind wie folgt:Arduino Nano400 Krawatte-Punkt SteckbrettFlachbandkabelDS1307 RTC IC32,768 kHz Crystal(12) 10mm LEDs(12) 180
Pollutionen: Mein Arduino Powered Internet aktiviert Traum-Generator

Pollutionen: Mein Arduino Powered Internet aktiviert Traum-Generator

wir alle brauchen mehr zu träumen, damit ich diesem Arduino Powered "dream Generator" erstellt haben, Pflanzen Sie die Samen für einige große denken Verrücktheit zu helfen.  Beim nähern Sie sich der Generator eine Maxbotix Ultraschall-Sensor lös
Gewusst wie: ein Arduino Powered Schach spielenden Roboter bauen

Gewusst wie: ein Arduino Powered Schach spielenden Roboter bauen

Beurteilung durch die schiere Anzahl der Schach Verwandte Instructables, ich denke, es ist sicher zu sagen, die Gemeinschaft genießt das Spiel.  Es ist jedoch schwierig, finde jemanden, der Sie spielt auf dem gleichen Niveau.  Um dieses Dilemma zu lö
Wie mithilfe eine CO2-Laser Power Sonde zur Messung der Laserleistung, einen schlechten Spiegel zu finden

Wie mithilfe eine CO2-Laser Power Sonde zur Messung der Laserleistung, einen schlechten Spiegel zu finden

dieses Video veranschaulicht die Mahoney CO2 Laser Power Probe verwenden.  Die CO2-Laser Power Probe ist eine häufig verwendete und notwendige Gerät:1. Messen Laserleistung für Lasereinstellungen im Laufe der Zeit. Ob Sie ein RF (Radio Frequency) bes
Gewusst wie: verwenden Sie eine 500 Watt CO2 Laser Power Meter Sonde

Gewusst wie: verwenden Sie eine 500 Watt CO2 Laser Power Meter Sonde

dieses Video veranschaulicht die Mahoney CO2 Laser Power Probe verwenden.  Die CO2-Laser Power Probe ist eine häufig verwendete und notwendige Gerät:1. Messen Laserleistung für Lasereinstellungen im Laufe der Zeit. Ob Sie ein RF (Radio Frequency) bes
Wie Konvertieren von 220V auf 110V auf eine chinesische CO2 Laser Power Supply

Wie Konvertieren von 220V auf 110V auf eine chinesische CO2 Laser Power Supply

Diese instructable bietet ein schrittweises Vorgehen zum Ändern einer chinesischen CO2-Laser-Stromversorgung aus einer Eingangsspannung von 220V AC auf 110V AC. Ich führe diesen Vorgang regelmäßig so meine Kunden ändern ihre Anforderungen, oder sie e
Wie zu testen und ein Chinese (China) CO2-Laser Power Supply von Ihrem CO2-Laser-Schlauch für Ihre Lasergravur und Laserschneidanlage Maschine zu lange Lebensdauer

Wie zu testen und ein Chinese (China) CO2-Laser Power Supply von Ihrem CO2-Laser-Schlauch für Ihre Lasergravur und Laserschneidanlage Maschine zu lange Lebensdauer

sicher sein, bei der Durchführung dieses Projekts.SICHERHEIT IST AM WICHTIGSTEN.  WENN MAN ES FALSCH MACHEN KÖNNEN SIE EINEN STROMSCHLAG SEIN.  DIE HOHE SPANNUNG UND STROM KOMBINATION KANN TÖDLICH SEIN.  FOLGEN SIE DEN ANWEISUNGEN UNTEN. DIE ANWEISUN
Arduino Powered Infared Sache

Arduino Powered Infared Sache

Hallo, dies ist mein erster instructible. Ich zeige Ihnen, wie man einen Arduino powered Analogsensor Leser (ich werde eine Infared Photodiode mit).Schritt 1: Teilen Braucht man mehrere Dinge zu machen:1. eine Art von Gehäuse oder box(2) ein Adafruit