CO2 Laser Water Flow Monitor - Arduino aangedreven / Windows Controlled (5 / 7 stap)

Stap 5: Program de Arudino...

U kunt nu sluiten de doos op elk gewenst moment maar wellicht gemakkelijker te debuggen van problemen als u eerst het programma van de Arduino. De schets is gekoppeld als CO2WaterFlowMonitor.ino.

Open CO2WaterFlowMonitor.ino met behulp van de Arduino compiler, aansluiten van de USB-poort op de computer en druk op de knop ' uploaden ' in de Arduino software. Dat is allen daar is aan het--tenzij u wilt leren hoe het werkt...

Basics

Ten eerste willen we de dingen zo eenvoudig mogelijk te houden. Zullen we laten zien wat elke pin doet aan de bovenkant van de schets met behulp van een macro. De EEPROM.h-header wordt gebruikt voor het vaststellen van onze EEPROM van het debiet. Dit betekent dat de macht kunt gaan aan en uit, maar de instelling blijft.


Het lezen van de flowsensor van de Water

We zullen van de Arduino interrupt 0 gebruiken om te tellen de pulsen van de flowsensor van water. Om dat te doen we eerst een paar globale variabelen instellen, en maak een basaal Interrupt Service Routine (ISR) die hobbels g_uiFlowDetect telkens een puls van de flowsensor van water wordt gedetecteerd.

Setup

Elke Arduino sketch heeft een setup. In ons zullen we...

-Zet elke pin op de juiste modus...

-Setup seriële uitgang waarmee u de Windows-Software lezen en onze eerste bericht verzenden in het...

-Uitschakelen (COM te NC1) elk relais en dan stilte de zoemer (lijn 55)...

-Verbind onze ISR (Flow Detect) als u wilt onderbreken 0 (PIN 2), en tijdelijk uitschakelen onderbreekt...

-Lees de alarmdrempel vanaf de EEPROM, of "burn it" in als een was er niet...

Vervolgens zal de hoofdlus detecteren en output (naar de USB seriële poort) de stroomsnelheid, instellen en schakel het alarm wanneer de rente kleiner is dan de drempelwaarde en laten invoeren als u wilt wijzigen de drempel van de Windows-software worden gebruikt. Om dit te bereiken worden de volgende hulpfuncties ingevoerd...

UpdateThreshold

Deze functie wordt gebruikt voor het opslaan van de nieuwwaarde van de drempel in de EEPROM-opslag en voor het verzenden van een bericht weergegeven met de wijziging van de Windows-Software.

Communiceren met de Windows-Software via WriteOutput en detectie Laser Power

Deze functie stuurt de status-updates naar de Windows-Software. De indeling is kort en simpel. Als de regel met een sterretje begint betekent dat een alarm zal worden het zwijgen opgelegd omdat de kracht van de laser is uitgeschakeld. Na de laser power detectie door het lezen van PIN 8, sturen we de huidige debiet een slash, waarna de huidige alarmdrempel. Deze nummers zijn in kwartaal-seconden.

De Main-Loop - vastleggen van de Flow-Rate terwijl het wacht op invoer van de Windows-Software

Aan de bovenkant van de hoofdlus wordt de flow rate variabele gewist (terwijl interrupts worden uitgeschakeld). Interrupts zijn dan ingeschakeld en een 1/4 seconde wachten wordt ingevoerd voor seriële input van de USB-poort (verzonden door de Windows-Software). Tijdens dat 250 milliseconden "wait", zal alle pulsen van de water flow rate sensor increment de stroom tarief teller door beroep te doen op de ISR.

Op regel 117 controleren we om te zien of de Windows-Software een nieuwe drempel (een waarde van één byte met de nieuwe drempel) verstuurd. Als het deed, zal bRC worden ingesteld op 1 (voor één byte). In dat geval UpdateThreshold() wordt aangeroepen en de lus opnieuw is gestart. Dit houdt ons van signalering van een alarm als gevolg van het onderbroken 250 ms wachten.

Instellen en schakelen de Alarm

In de laatste helft van de hoofdlus, die de drempel is in vergelijking met de stroomsnelheid en wanneer het is lager dan het tarief voor dat 1/4 seconde, het alarm wordt geklonken en het Relais is ingeschakeld...

Op lijn 131 testen we om te zien als het debiet kleiner dan de drempel is. Als er controleren we om te zien als het lasersysteem macht is, door het testen van de ENABLE_ALARM_PIN (lijn 134). Als het alarm is ingeschakeld, de zoemer (lijn 136), anders wordt geklonken (lijn 140) het zwijgen is opgelegd.

Lijnen 142 via 145 veroorzaken elk relais COM verbinden NC1 (normaal gesloten). Deze uitschakelen de laser. Één lijn 146 de status wordt verzonden naar de Windows-Software en klik vervolgens op regel 147 de lus recycleert.

Wanneer het alarm wordt niet geactiveerd de code valt door lijn 149 waar de zoemer het zwijgen is opgelegd en elk relais wordt ingeschakeld voor de verbinding COM geen (normaal Open), waardoor de laser. De lus eindigt uiteindelijk op lijn 154 door de status te sturen naar de Windows-Software.

Gerelateerde Artikelen

CO2 Laser Water Chiller

CO2 Laser Water Chiller

CO2 Laser Water ChillerCO2 Laser buizen worden gekoeld door lopen of pompen van water door de buis. Dit is nodig om het verlengt de levensduur van de buis die anders zou oververhit raken en snel de stroom uitvalt en uiteindelijk niet te bedienen. Dur
Arduino aangedreven servo control - Ik maakte het op TechShop

Arduino aangedreven servo control - Ik maakte het op TechShop

servo's zijn ongelooflijk handig in het maken van "dingen" verplaatsen. Maar om dat ding Beweeg je moet besturing van het een of andere manier. Gelukkig, arduino maakt dit ongelooflijk gemakkelijk te doen en kan gedaan worden met iets als een po
Hoe meet je CO2 laser zet een Laser Gravure Machine en Laser snijmachine met behulp van een vereenvoudigde (low-cost) CO2-laser power meter

Hoe meet je CO2 laser zet een Laser Gravure Machine en Laser snijmachine met behulp van een vereenvoudigde (low-cost) CO2-laser power meter

meest CO2 laser power meter zijn erg duur en zijn uitgerust met mogelijkheden tot ver buiten wat de gemeenschappelijke laser machine exploitant/eigenaar moet.  Deze instructies weergeven een sub-$100 laser power meter sonde op het werk, snelle laser
Acryl Fish Tank met Arduino aangedreven Feeder

Acryl Fish Tank met Arduino aangedreven Feeder

Heb je ooit wilde een meer handen op gevoel bij het ophalen van een vis? Of wilde iets anders dan de gemiddelde aquaria gevonden in de winkels? Dit aquarium is volledig aangepast en afgestemd op uw grootte kan worden gewijzigd en heeft een Arduino aa
Arduino-aangedreven A-10 stok grip externe w/Emergency Party Button!

Arduino-aangedreven A-10 stok grip externe w/Emergency Party Button!

ik Plama2002 de "Emergency Party Button" bouwen een tijdje terug kwam en wilde iets gelijkaardig voor mijn bar. Ik had ook een oude USAF B-8 stok greep uit een A-10A die ik in mijn vorige leven opgepikt. Ik dacht dat in plaats van gewoon een ges
Arduino aangedreven RC tank

Arduino aangedreven RC tank

dit is mijn eerste instructable dus neem aub met mij. Mijn naam is Stanley Deakins en ik heb gespeeld met elektronica al geruime tijd, al was het jaren geleden. Ik heb die passie weer op te rakelen vanwege mijn recente werk. Ik heb mijn handen op enk
Douche Monitor Arduino met LCD display

Douche Monitor Arduino met LCD display

Welkom! Voor onze milieu Capstone klasse (senior proefschrift) voor St. Olaf College bouwden we een monitor die doeltreffend op hoeveel water toezien zou maakt gebruik van een douche. Het idee achter deze water-monitor is dat als u een piezo transduc
2 Arduino aangedreven RC vliegtuig

2 Arduino aangedreven RC vliegtuig

Hallo, Welkom op mijn instructable op het opbouwen van een RC vliegtuig, volledig vanaf nul, met Arduino.Ik heb wilde een RC-vliegtuig te bouwen voor een tijdje, en de onderdelen voor gebouw voor ontvangen. De zender en ontvangers, echter, kunnen ext
CO2 laser dat plaatwerk snijdt

CO2 laser dat plaatwerk snijdt

Let op: Ik ben echt niet concurreren om te winnen van de laser, een t-shirt zou prima, bedankt.Ik zag de competitie en dacht dat het zou leuk om te pronken met mijn systeem.Inleiding. Het algemene idee van deze CO2-lasersysteem is dat een lichtbundel
Het gebruik van een 200 watt CO2 laser macht sonde voor het meten van CO2 laser macht

Het gebruik van een 200 watt CO2 laser macht sonde voor het meten van CO2 laser macht

deze video laat zien hoe u de Mahoney CO2 sonde voor de macht van de laser.  De CO2 sonde voor de macht van de laser is een algemeen gebruikte en noodzakelijk apparaat te:1. maatregel laser vermogen voor laser instellingen na verloop van tijd. Of u e
Het gebruik van een CO2-laser macht sonde voor het meten van laser uitgangsvermogen te vinden van een slechte spiegel

Het gebruik van een CO2-laser macht sonde voor het meten van laser uitgangsvermogen te vinden van een slechte spiegel

deze video laat zien hoe u de Mahoney CO2 sonde voor de macht van de laser.  De CO2 sonde voor de macht van de laser is een algemeen gebruikte en noodzakelijk apparaat te:1. maatregel laser vermogen voor laser instellingen na verloop van tijd. Of u e
Het gebruik van een 500 watt CO2 laser power meter sonde

Het gebruik van een 500 watt CO2 laser power meter sonde

deze video laat zien hoe u de Mahoney CO2 sonde voor de macht van de laser.  De CO2 sonde voor de macht van de laser is een algemeen gebruikte en noodzakelijk apparaat te:1. maatregel laser vermogen voor laser instellingen na verloop van tijd. Of u e
Ter vervanging van een CO2-laser-buis

Ter vervanging van een CO2-laser-buis

SAFETY FIRST - Lasers zijn gevaarlijk, ik ben ervan uitgaande dat u dit weet en je weet wat je doet met lasers en soldering strijkijzers. Nooit uitgeput een laser buis buiten de laser-chassis, nooit verslaan elke veiligheidssystemen voor uw laser cut
LinkIt One Tutorials - #8 DS18B20 één draad Water Temperatuur Monitor

LinkIt One Tutorials - #8 DS18B20 één draad Water Temperatuur Monitor

Voor deze tutorial ga ik om een water temperatuur monitor met behulp van een DS18B20.De DS18B20 is een apparaat van een draad. Één draad betekent dat het krijgt opdrachten van het controle-apparaat (in dit geval onze LinkIt een boord) en stuurt ze te