Taula de continguts:
- Subministraments
- Pas 1: història
- Pas 2: teoria i metodologia
- Pas 3: Configuració del maquinari
- Pas 4: Configuració del programari
- Pas 5: Codi Arduino
Vídeo: Paperera intel·ligent de Magicbit: 5 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:11
En aquest tutorial aprendrem sobre com fer un cubell d’escombraries intel·ligent amb Magicbit dev. placa amb Arduino IDE. Comencem.
Subministraments
- Magicbit
- Cable USB-A a Micro-USB
- Sensor d'ultrasons - HC-SR04 (genèric)
- Micro-servo motor SG90
Pas 1: història
Abans de passar al projecte, vegeu què és el contenidor de polsera Smart. Hi ha un o més contenidors de pols a cada llar. En moltes ocasions l’heu cobert. Perquè això farà olor a casa teva. Per tant, quan vulgueu posar una mica d’escombraries a les escombraries, l’heu d’obrir. Però si, quan us acosteu a les escombraries per posar les escombraries i es cobreix automàticament, s’obrirà, és com serà. Boig aaa…. per tant, aquest és el contenidor d’escombraries intel·ligent.
Pas 2: teoria i metodologia
La teoria és molt senzilla. Quan camineu a prop de les escombraries, us detectarà. Si la distància entre vosaltres i la brossa és inferior a una distància definida, la coberta de la brossa s’obrirà automàticament. Per completar aquests dos objectes, fem servir un sensor d'ultrasons HC-SRO4 i servomotors petits. Podeu obtenir qualsevol tipus de servomotor digital.
Pas 3: Configuració del maquinari
Per a aquest projecte hem utilitzat principalment tres components de maquinari. Són Magicbit, servomotor i sensor d'ultrasons. La connexió entre totes aquestes parts es mostra a la figura superior.
El sensor ultrasònic utilitza 3,3 v per engegar. Per tant, hem utilitzat el port inferior dret de la placa Magicbit per connectar el sensor d'ultrasons a Magicbit. Però el servomotor s’utilitza 5V per a un funcionament adequat, per tant, hem utilitzat el port inferior esquerre per connectar el servomotor amb Magicbit. En aquest cas, fem servir el mòdul de connector servo de bits Magic. Però si no teniu aquest mòdul, podeu utilitzar tres cables jumper per connectar 5V a 5V, Gnd a Gnd i el pin de senyal a 26 pins a magicbit.
Ara vegem el vessant mecànic del nostre projecte. Per obrir la tapa utilitzem un mecanisme de palanca molt senzill. Hem connectat un clip de mà servo al lateral. A continuació, vam connectar el forat de la cantonada del clip i la tapa de la brossa amb un fort fil metàl·lic. El fil metàl·lic pot girar respecte al clip de servo i la tapa de la brossa. Si estudieu la imatge i el vídeo més importants, podeu crear-ho molt fàcilment.
Pas 4: Configuració del programari
La part del programari també és molt senzilla. Vegem el codi IDE Arduino i el seu funcionament.
Per conduir el servo, fem servir la biblioteca de servidors ESP32. Aquesta biblioteca gairebé inclou el gestor de taules de bits màgics a Arduino IDE. Per tractar el sensor d'ultrasons, utilitzem la nova biblioteca de Ping. Es pot descarregar des del següent enllaç.
bitbucket.org/teckel12/arduino-new-ping/d…
Descarregueu el fitxer zip i vés eines> inclou biblioteca> afegiu biblioteca Zip a Arduino. ara seleccioneu el fitxer zip descarregat de la nova biblioteca de pins. al codi, primer declarem les biblioteques de servors i ultrasons. A la funció de bucle sempre comprovem la distància des de la paperera fins a l'objecte frontal més proper. Si aquest ratllador és superior a 200, la distància de sortida de la biblioteca és 0. Quan la distància és inferior a 60 cm, s'executa el bucle per obrir la tapa girant el servo. Si la distància és superior a 60 cm, la coberta es posarà. Mitjançant l’ús de la variable booleana sempre comprovem l’estat de la coberta. Si la coberta està caiguda, només s'obrirà. També a la inversa. Ara seleccioneu el port i la placa COM correctes com a magcibit i, a continuació, pengeu el codi. Ara la vostra escombrera intel·ligent ja està a punt per utilitzar-se.
Pas 5: Codi Arduino
#incloure
#define TRIGGER_PIN 21 #define ECHO_PIN 22 #define MAX_DISTANCE 200 Sonar NewPing (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); #include // include servo library int distance; Servo RadarServo; configuració nul·la () {Serial.begin (115200); RadarServo.attach (26); // Defineix en quin pin hi ha el retard de connexió del servomotor (3000); } void loop () {// gira el servomotor de 15 a 165 graus per a (int i = 0; i <= 180; i ++) {RadarServo.write (i); retard (50); distance = sonar.ping_cm (); // Crida a una funció per calcular la distància mesurada pel sensor d'ultrasons per a cada grau per (int j = 0; j0) {break; } Serial.print (i); // Envia el grau actual al port sèrie Serial.print (","); // Envia un caràcter d'addició just al costat del valor anterior necessari més endavant a l'IDE de processament per indexar Serial.print (j); // Envia el grau actual al port sèrie Serial.print ("*"); Serial.print (1); // Envia el valor de la distància al port sèrie Serial.print ("/"); // Envia un caràcter d'addició just al costat del valor anterior necessari més endavant a l'IDE de processament per indexar Serial.print (distància); // Envia el valor de la distància al port sèrie Serial.print ("."); // Envia un caràcter d'addició just al costat del valor anterior necessari a l'IDE de processament per indexar}} // Repeteix les línies anteriors de 165 a 15 graus per (int i = 180; i> = 0; i -) {RadarServo.escriu (i); retard (50); distància = sonar.ping_cm (); for (int j = 75; j> = 0; j- = 25) {if (i == 180 && (j == 75 || j == 50 || j == 25)) {continuar; } Serial.print (i); // Envia el grau actual al port sèrie Serial.print (","); // Envia un caràcter d'addició just al costat del valor anterior necessari més endavant a l'IDE de processament per indexar Serial.print (j); // Envia el grau actual al port sèrie Serial.print ("*"); Serial.print (-1); // Envia el valor de la distància al port sèrie Serial.print ("/"); // Envia un caràcter d'addició just al costat del valor anterior necessari més endavant a l'IDE de processament per indexar Serial.print (distància); // Envia el valor de la distància al port sèrie Serial.print ("."); // Envia un caràcter d'addició al costat del valor anterior necessari més endavant a l'IDE de processament per a la indexació}}}
Recomanat:
Llum LED d'escriptori intel·ligent - Il·luminació intel·ligent amb Arduino - Espai de treball Neopixels: 10 passos (amb imatges)
Llum LED d'escriptori intel·ligent | Il·luminació intel·ligent amb Arduino | Espai de treball de Neopixels: ara passem molt de temps a casa estudiant i treballant virtualment, per què no fer que el nostre espai de treball sigui més gran amb un sistema d’il·luminació personalitzat i intel·ligent basat en els LEDs Arduino i Ws2812b. Aquí us mostro com construir el vostre Smart Llum LED d'escriptori que
Converteix un telèfon intel·ligent no utilitzat en una pantalla intel·ligent: 6 passos (amb imatges)
Converteix un telèfon intel·ligent no utilitzat en una pantalla intel·ligent: el tutorial de Deze es troba a Engels, per a la versió del clàssic espanyol. Teniu un telèfon intel·ligent (antic) sense utilitzar? Convertiu-lo en una pantalla intel·ligent amb Fulls de càlcul de Google i paper i llapis seguint aquest senzill tutorial pas a pas. Quan hagis acabat
Làmpada LED intel·ligent controlada per telèfon intel·ligent Bluetooth: 7 passos
Làmpada LED intel·ligent controlada per telèfon intel·ligent Bluetooth: sempre somio amb controlar els meus aparells d’il·luminació. Aleshores algú va fabricar una increïble llum LED de colors. Fa poc em vaig trobar amb una làmpada LED de Joseph Casha a Youtube. Inspirant-me en ell, vaig decidir afegir diverses funcions mantenint la comoditat
Rellotge despertador intel·ligent: un despertador intel·ligent fabricat amb Raspberry Pi: 10 passos (amb imatges)
Rellotge despertador intel·ligent: un rellotge despertador intel·ligent fet amb Raspberry Pi: Heu volgut mai un rellotge intel·ligent? Si és així, aquesta és la solució per a vosaltres. He creat Smart Alarm Clock (Rellotge despertador intel·ligent), aquest és un rellotge que permet canviar l’hora de l’alarma segons el lloc web. Quan l’alarma s’activi, hi haurà un so (brunzidor) i 2 llums
Jardineria intel·ligent i agricultura intel·ligent basades en IoT mitjançant ESP32: 7 passos
Jardineria intel·ligent i agricultura intel·ligent basades en l’IoT que utilitzen ESP32: el món canvia a mesura que l’agricultura passa. Avui en dia, la gent integra electrònica en tots els camps i l’agricultura no n’és una excepció. Aquesta fusió d'electrònica a l'agricultura està ajudant els agricultors i les persones que gestionen els jardins