Inhoudsopgave:
- Benodigdheden
- Stap 1: Verhaal
- Stap 2: Theorie en methodologie
- Stap 3: Hardware-installatie
- Stap 4: Software-installatie
- Stap 5: Arduino-code
Video: Slimme vuilnisbak van Magicbit - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
In deze tutorial leren we hoe je een slimme vuilnisbak kunt maken met Magicbit dev. bord met Arduino IDE. Laten we beginnen.
Benodigdheden
- Magicbit
- USB-A naar micro-USB-kabel
- Ultrasone sensor - HC-SR04 (algemeen)
- SG90 Micro-servomotor
Stap 1: Verhaal
Laten we, voordat we naar het project gaan, kijken naar wat Smart vuilnisbak is. In elk huis staan wel een of meer vuilnisbakken. Vaak heb je het gedekt. Want dan komt er geur in je huis. Dus als je wat afval in de vuilnisbak wilt doen, moet je het openen. Maar als je in de buurt van de vuilnisbak loopt om het afval te plaatsen en automatisch gaat het deksel open, hoe ziet het er dan uit. Gekke aaa…. dus dat is de slimme vuilnisbak.
Stap 2: Theorie en methodologie
De theorie is heel eenvoudig. Als je in de buurt van de vuilnisbak loopt, zal het je detecteren. Als de afstand tussen u en de vuilnisbak kleiner is dan een bepaalde afstand, zal het deksel van de vuilnisbak automatisch openen. Om beide objecten te voltooien, gebruiken we HC-SRO4 ultrasone sensor en kleine servomotoren. U kunt elk type digitale servomotor krijgen.
Stap 3: Hardware-installatie
Voor dit project hebben we voornamelijk drie hardwarecomponenten gebruikt. Ze zijn Magicbit, servomotor en ultrasone sensor. De verbinding tussen al deze onderdelen is weergegeven in bovenstaande figuur.
Ultrasone sensor gebruikte 3,3 v voor het opstarten. Daarom hebben we de rechter onderste poort van het Magicbit-bord gebruikt om de ultrasone sensor op Magicbit aan te sluiten. Maar servomotor wordt gebruikt 5V voor een goede werking, daarom hebben we de linker onderste poort gebruikt om de servomotor met Magicbit te verbinden. In dit geval gebruiken we de Magic bit servo connector module. Maar als je die module niet hebt, kun je drie jumperdraden gebruiken om 5V naar 5V, Gnd naar Gnd en signaalpin naar 26-pins op magicbit te verbinden.
Laten we nu eens kijken naar de mechanische kant van ons project. Om het deksel te openen gebruiken we een heel eenvoudig hefboommechanisme. We hebben de ene kant servo-handclip op de servo aangesloten. Vervolgens hebben we het hoekgat in de clip en het deksel van de vuilnisbak verbonden met behulp van sterk metaaldraad. De metaaldraad kan draaien ten opzichte van servoclip en vuilnisbakdeksel. Door topbeeld en video te bestuderen kun je dat heel eenvoudig opbouwen.
Stap 4: Software-installatie
Het softwaregedeelte is ook heel eenvoudig. Laten we eens kijken naar Arduino IDE-code en hoe die code werkt.
Voor het aansturen van servo gebruiken we ESP32 servo-bibliotheek. Deze bibliotheek is bijna opgenomen in Magic Bit Board Manager in Arduino IDE. Om met ultrasone sensor om te gaan, gebruiken we newPing-bibliotheek. Deze is te downloaden via de volgende link.
bitbucket.org/teckel12/arduino-new-ping/d…
Download het zip-bestand en ga naar tools>bibliotheek opnemen>Zip-bibliotheek toevoegen in Arduino. selecteer nu uw gedownloade zip-bestand van de nieuwe pinbibliotheek. in de code verklaren we eerst servo- en ultrasone sensorbibliotheken. In de loop-functie controleren we altijd de afstand van de vuilnisbak tot het dichtstbijzijnde object aan de voorkant. Als die rasp dan 200 is, is de afstandsuitvoer van de bibliotheek 0. Als de afstand kleiner is dan 60 cm, voert u een lus uit om de klep te openen door de servo te draaien. Is de afstand groter dan 60 cm dan zal de hoes worden neergezet. Door gebruik te maken van een booleaanse variabele controleren we altijd de staat van de hoes. Als het deksel naar beneden is, gaat het alleen open. Ook omgekeerd. Selecteer nu de juiste COM-poort en board als magcibit, upload vervolgens de code. Nu is je slimme vuilnisbak klaar voor gebruik.
Stap 5: Arduino-code
#erbij betrekken
#define TRIGGER_PIN 21 #define ECHO_PIN 22 #define MAX_DISTANCE 200 NewPing-sonar (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); #include //include servo library int distance; Servo RadarServo; void setup() { Serial.begin(115200); RadarServo.attach(26); // Bepaalt op welke pin de servomotor is bevestigd vertraging (3000); } void loop() {// roteert de servomotor van 15 naar 165 graden for(int i=0;i<=180;i++){ RadarServo.write(i); vertraging (50); distance = sonar.ping_cm();// Roept een functie op voor het berekenen van de afstand gemeten door de ultrasone sensor voor elke graad for(int j=0;j0){ break; } Serieel.print(i); // Stuurt de huidige graad naar de seriële poort Serial.print(", "); // Stuurt een toevoegingsteken direct naast de vorige waarde die later nodig is in de Processing IDE voor het indexeren van Serial.print(j); // Stuurt de huidige graad naar de seriële poort Serial.print ("*"); Serieafdruk(1); // Stuurt de afstandswaarde naar de seriële poort Serial.print ("/"); // Stuurt een toevoegingsteken direct naast de vorige waarde die later nodig is in de Processing IDE voor het indexeren van Serial.print(distance); // Stuurt de afstandswaarde naar de seriële poort Serial.print("."); // Stuurt een optelteken direct naast de vorige waarde die later in de Processing IDE nodig is voor indexering } } // Herhaalt de vorige regels van 165 tot 15 graden for(int i=180;i>=0;i--){ RadarServo.schrijf(ik); vertraging (50); afstand = sonar.ping_cm(); for(int j=75;j>=0;j-=25){ if(i==180 && (j==75 ||j==50 ||j==25)){ ga verder; } Serieel.print(i); // Stuurt de huidige graad naar de seriële poort Serial.print(", "); // Stuurt een toevoegingsteken direct naast de vorige waarde die later nodig is in de Processing IDE voor het indexeren van Serial.print(j); // Stuurt de huidige graad naar de seriële poort Serial.print ("*"); Serieafdruk(-1); // Stuurt de afstandswaarde naar de seriële poort Serial.print ("/"); // Stuurt een toevoegingsteken direct naast de vorige waarde die later nodig is in de Processing IDE voor het indexeren van Serial.print(distance); // Stuurt de afstandswaarde naar de seriële poort Serial.print("."); // Stuurt een optelteken direct naast de vorige waarde die later nodig is in de Processing IDE voor indexering } } }
Aanbevolen:
Slimme bureaulamp - Slimme verlichting met Arduino - Neopixels-werkruimte: 10 stappen (met afbeeldingen)
Slimme bureaulamp | Slimme verlichting met Arduino | Neopixels-werkruimte: tegenwoordig brengen we veel tijd thuis door, studeren en werken virtueel, dus waarom zouden we onze werkruimte niet groter maken met een aangepast en slim verlichtingssysteem op Arduino en Ws2812b-leds. Hier laat ik u zien hoe u uw Smart LED bureaulamp die
Slimme vuilnisbak: 6 stappen
Slimme vuilnisbak: Hallo jongens !!! Ik ben Vedaansh Verdhan. En vandaag laat ik je zien hoe je je eigen Smart Dustbin kunt maken. Volg me op Instragram om informatie te krijgen over mijn volgende project. Laten we beginnen !!!!Instragram-account:--- robotics_08
Automatische vuilnisbak: 6 stappen
Automatische vuilnisbak: dit is waarschijnlijk de handigste vuilnisbak ooit, hij is ontworpen voor luie mensen zoals wij. ;) Door deze vuilnisbak te gebruiken, hoef je het deksel van de vuilnisbak niet meer aan te raken. Soms kan het deksel van de prullenbak vuil zijn, die bacteriën en virussen bevat die we niet
Op IoT gebaseerde slimme vuilnisbak: 8 stappen
IoT Based Smart Dustbin: In deze tutorial gaan we een IoT Based Smart Dustbin Monitoring System maken. We gaan controleren of de Dustbin vol is of niet en als deze vol is, informeer dan de eigenaar via een pushmelding op hun telefoon. Softwarevereisten: Blynk
Slimme vuilnisbak: 5 stappen
Smart Dustbin: Hallo vrienden, ik kom met mijn nieuwe project, dat is Smart Dustbin. Het is op IoT gebaseerd en geüploade gegevens naar ding - spreek. Het bevat een lijnvolgmechanisme. Het opent ook het deksel, wanneer iemand ervoor komt. Het verzendt atmosferische temperatuur, ga