Inhoudsopgave:

Airduino: 6 stappen
Airduino: 6 stappen

Video: Airduino: 6 stappen

Video: Airduino: 6 stappen
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, November
Anonim
Airduino
Airduino
Airduino
Airduino

Een paar woorden voordat ik uitleg hoe ik mijn Airduino heb gemaakt. Het hele project is eigenlijk een schoolproject en omdat we een strikte tijdslimiet hadden, zijn veel dingen niet perfect, maar de basisfunctionaliteit werkt.

Dus wat is de Airduino? Kortom: het is een mooie draadloze luchtmonitor. Lang: een Arduino meet de luchtkwaliteit, stuurt alle data via Bluetooth naar een Raspberry Pi en slaat deze op in een database. Ik heb een simpele website gemaakt om de data visueel weer te geven. Maar het belangrijkste is dat hij een krachtige bestuurbare RGB-led heeft!

Wat meet het precies? Nou, ik heb ervoor gekozen om de temperatuur, vochtigheid, luchtdruk, CO2 en CO te meten. Je kunt alles meten wat je wilt, zolang er maar een compatibele sensor voor is.

Ik heb een gedetailleerde lijst met benodigdheden bijgevoegd met links naar enkele van de producten die ik heb gekocht.

Benodigdheden

Dit zijn alle componenten die ik heb gebruikt:

Arduino

Raspberry Pi

LCD scherm

HC-05, elke Bluetooth-module werkt!

BMP-180 (luchtdruksensor)

DHT-11 (luchtvochtigheidssensor)

MQ-7 (CO-sensor)

MQ-135 (CO2-sensor)

9W RGB-led (3x3W)

XL4015 Step down buck converters (link)(2x)

XL6009E1 Step-up boost-converter (link)

MH CD42 batterijkaart (link)

18650 Batterijcel (4x)

4 Bay 18650 batterijhouder

BC337-transistors (5x)

Weerstanden (1 Kohm (5x), 10 Kohm)

Schakelaar

Knop

Micro-USB naar DIP-adapter

Draden

Perfboard

Koellichaam (van een oude computer)

Stap 1: Arduino-circuit

Arduino-circuit
Arduino-circuit
Arduino-circuit
Arduino-circuit

Het moeilijkste deel is het deel van de Arduino omdat het eigenlijk alles aankan.

In de meegeleverde schema's kun je, nou ja, het schema zien. Het ziet er in het begin misschien groot en moeilijk uit, maar het is vrij eenvoudig. Ik bouwde eerst het hele circuit zonder de circuits voor de led, op een breadbord om te zien of het allemaal werkte. Daarna heb ik alles van perfboard gesoldeerd, dat heb ik in ieder geval geprobeerd.

De meeste sensoren zijn redelijk eenvoudig, behalve de MQ-7. Deze sensor is naar mijn ervaring moeilijk in te passen in het project. Ik volgde een van de weinige goede handleidingen die ik kon vinden en het leek te werken als ik alleen die sensor zou aansluiten. Als ik de andere sensoren aansloot, deed het raar, dus ik moest wat manipulatie van de code doen, daarover later meer.

Stap 2: Arduino-code

Als je je circuit op een breadboard hebt gebouwd, kun je het meeste ervan testen. Sluit je Arduino aan op een pc en upload de meegeleverde code. Als u de tx- en rx-pinnen loskoppelt, kunt u opdrachten verzenden via de Arduino IDE-monitor. Als je 'BMPTemp' stuurt, zou je een reactie moeten krijgen als je alles goed hebt gedaan.

Stap 3: Raspberry Pi-circuit

Ik heb een display aan mijn Pi toegevoegd om het IP-adres weer te geven waarop de site wordt gehost. het moeilijkste was het uitzoeken van de juiste pinnen.

Stap 4: Raspberry Pi-code

Het eerste dat u hoeft te doen, is de ingebouwde Bluetooth configureren. Ik deed alles met behulp van de opdrachtregel, het kan worden gedaan met behulp van een GUI, maar dat zal ik niet behandelen. Ik neem aan dat je de basis kent van een Raspberry PI en Rasbian, het besturingssysteem.

Het gaat als volgt:

Stap 1: maak via SSH verbinding met je Pi, ik gebruik Putty.

Stap 2: Typ de volgende opdrachten in de terminal:

  1. 'sudo bluetoothctl'
  2. 'aan'
  3. 'agent aan'
  4. 'scannen'

Stap 3: Wacht nu tot de HC-05 is ontdekt, je moet hem aanzetten.

Stap 4: Nu moet u het apparaat koppelen en vertrouwen, typ de volgende opdrachten:

  1. 'pair xx:xx:xx:xx:xx:xx', met het mac-adres van de HC-05-module op de plaats van de x'en.
  2. 'connect xx:xx:xx:xx:xx:xx', maar dit zal hoogstwaarschijnlijk een foutmelding geven.
  3. 'vertrouw op xx:xx:xx:xx:xx:xx'

Stap 5: Nu de module gekoppeld en vertrouwd is, moeten we hem aan een seriële poort binden. Dit kan met het volgende commando: 'sudo rfcomm bind 0 xx:xx:xx:xx:xx:xx', wederom met de x'es voor het mac-adres van de HC-05 module. Normaal gesproken zou u, als u in '/dev' kijkt, 'rfcomm0' moeten zien, als u niet opnieuw probeert op te starten.

Het probleem is nu dat je die opdracht handmatig moet uitvoeren, alles wat je de Pi opstart. Om dat automatisch te doen heb ik het commando toegevoegd aan '/etc/rc.local' voor 'exit 0'. Nu zal het de module automatisch binden.

Nu je de Bluetooth hebt geconfigureerd, kun je de code uitvoeren die ik heb toegevoegd. Pas op dat ik een MariaDB-database op mijn Pi heb gezet, ik zal niet bespreken hoe ik dat moet instellen, ik zal alleen een model van mijn database en een dumbfile opnemen. Als je de code wilt uitvoeren zonder de database en de website, heb ik een eenvoudig programma meegeleverd om dit te doen.

Kopieer de inhoud van het zipbestand naar je Pi en voer ze uit met het volgende commando: 'python3 airduino.py', ervan uitgaande dat je in dezelfde map zit. Als uw Arduino is ingeschakeld en de tx- en rx-pinnen zijn aangesloten, zou u enkele berichten moeten zien over het invoegen van gegevens in de database. Als je het programma automatisch wilt starten, voeg dan deze regel toe aan '/etc/rc.local': 'python3 //arduino.py', vervang het door het eigenlijke pad.

Voor de website heb ik een appache-server geïnstalleerd om de website te hosten. Kopieer de bestanden uit het zipbestand naar '/var/www/html/'. Als je nu naar het IP-adres van je PI gaat, zou je de website en gegevens moeten zien als alles correct werkte.

Stap 5: Een behuizing bouwen en solderen

Een behuizing bouwen en solderen
Een behuizing bouwen en solderen
Een behuizing bouwen en solderen
Een behuizing bouwen en solderen
Een behuizing bouwen en solderen
Een behuizing bouwen en solderen

Arduino

Nu alles werkt, behalve de led, is het tijd om alles in een mooie koffer te stoppen. Ik besluit een toren te maken waar alle componenten op aangesloten zijn, en die te omringen met een simpele behuizing.

Maar eerst heb ik alle componenten op perfboard gesoldeerd en enkele draden voor Ground en Vcc bevestigd. Ik plaatste meestal een of twee componenten op één stuk en plaatste ze rond de toren.

De batterijhouder heeft langere draden en zit niet vast, hij kan naar binnen en naar buiten schuiven om van cel te wisselen.

Op dit punt plaatste ik de drivers voor de led op het laatste niveau van mijn toren. Ik heb de uitgangsspanning van de drivers verlaagd naar 2,2 voor de rode led en 3,2 voor de groene en blauwe led. Ik bevestigde de led aan mijn koellichaam en mijn ventilator met ritssluitingen. Daarna heb ik wat hout gebruikt om het op zijn plaats te houden.

Ik heb de meeste aardingsdraden en Vcc-draden aangesloten met behulp van schroefklemmen.

Zorg ervoor dat je je grondplaat groot genoeg maakt, zodat de buitenbehuizing mooi op één lijn ligt. De buitenste behuizing is gewoon een schildknaap van hout. Bovenop heb ik wat doorzichtig plastic gedaan dat ik een beetje heb geschuurd om het licht zachter te maken. Ik heb ook de aan / uit-knop toegevoegd.

Raspberry Pi

Voor de Raspberry Pi heb ik zojuist een eenvoudige houten doos gemaakt met het LCD-scherm bovenop en de knop aan de zijkant.

Stap 6: Finale

Nadat je alles hebt gesoldeerd en je behuizing hebt gebouwd, is het tijd om de laatste tests uit te voeren. Zet alles aan en bezoek de website, als alles goed is gegaan, zou je wat live gegevens moeten zien.

Over de batterijen:

Als u meer dan 1 batterij parallel gebruikt, moet u ervoor zorgen dat hun spanningsniveaus hetzelfde zijn of in de buurt komen.

Github:

Hier is een link naar mijn Github-repository waar alle up-to-date bestanden zich bevinden.

Aanbevolen: