Satura rādītājs:
- 1. darbība: SmartBin aprīkojums
- 2. darbība: aveņu kastes un LED joslas izgatavošana
- 3. solis: vāka daļa
- 4. solis: programmatūras daļa un datu iegūšana
Video: SmartBin: 4 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
Šī projekta galvenais mērķis ir izveidot elektronisku ierīci, kas izmanto vismaz vienu Raspberry Pi. Komandā ir pieci topošie mehāniķi un viens automatizācijas inženieris. Mūsu projekts sastāv no miskastes izgatavošanas, kas atveras un aizveras automātiski, ko izraisa pēdas kustība zem kustības detektora, kas atrodas atkritumu tvertnes priekšpusē. Wifi USB zibatmiņa tiek izmantota, lai nosūtītu datus uz vietni. Šo atkritumu tvertni sauc par "SmartBin". Humoristiskais video iepriekš iepazīstina ar mūsu novatorisko SmartBin.
Lai īstenotu šo projektu un šo ievērojamo SmartBin, bija nepieciešami vairāki rīki:
- Metrs
- Spēcīga līme
- Līmlente
- Koka zāģis
- Skrūvgriezis
- Urbjmašīna
- Skava
- Nazis
1. darbība: SmartBin aprīkojums
SmartBin sastāv no zaļām, oranžām un sarkanām LED gaismām, kas novietotas uz stiprinājuma tvertnes kreisajā pusē, kas norāda, cik tā ir piepildīta. Šīs gaismas būs skaidri redzamas un brīdinās lietotāju, kad nepieciešams nomainīt atkritumu maisu. Programmēšanas valoda ir Python. Izmērītais tvertnes piepildīšanas līmenis tiek pārsūtīts uz šādu vietni:
Šeit ir izmantoti elementi, taču jūs varat viegli atrast alternatīvu risinājumu:
- 1 tvertne ("šūpoles pārsega" tvertne)
- 1 Servomotors, lai atvērtu tvertni
- 1 Raspberry Pi 2
- 2 barošanas avoti (5V mobilā tālruņa lādētājs un 6V barošanas avots), lai piegādātu Raspberry Pi un servomotoru
- 1 Ultraskaņas sensors tvertnes uzpildes līmeņa mērīšanai
- Dažas gaismas diodes, lai parādītu uzpildes līmeni (4 zaļas, 2 oranžas un 1 sarkanas)
- 1 Ultraskaņas kustības detektors, lai noteiktu kustību
- 1 16 GB SD karte
- Elektriskie rezistori (10 000 omi, 2000 omi un 1000 omi)
- 1 WiFi USB zibatmiņa, lai iespējotu bezvadu pārraidi uz vietni.
- 1 Maizes dēlis un daži aveņu kabeļi
Paredzamā ražošanas cena ir 80 eiro.
2. darbība: aveņu kastes un LED joslas izgatavošana
Aveņu kastes ražošanai izmantojiet koka zāģi. Piestipriniet visas kastes puses ar kniedēm, lai tā izskatītos tīra. Kā norāda nosaukums, šajā kastē būs ne tikai Raspberry Pi, bet arī kustības sensors, kuru jūs novietosit apakšā. Kad kaste ir uzbūvēta, krāsojiet to tādā pašā krāsā kā tvertni. Lai izveidotu šo lodziņu, varētu izmantot 3D drukas tehnoloģiju.
LED stieņa ražošanai izmantojiet elektrisko kanālu, kurā urbjat caurumus, lai varētu uzstādīt LED gaismas. LED josla ir arī jākrāso. Kad viss ir gatavs, uzstādiet gaismas diodes kanālā un izveidojiet elektrisko savienojumu. Pievērsiet uzmanību, lai pareizi pieskaitītu katru LED kabeli ar līmlenti. Elektroinstalācijas laikā tas palīdzēs identificēt katru gaismas diodi.
Visbeidzot, piestipriniet kastīti un LED joslu atkritumu tvertnes priekšpusē.
3. solis: vāka daļa
Kas attiecas uz tvertnes vāku, pirmais solis ir pielīmēt servomotoru pie vāka. Iepriekš ir jāpagarina sviras efekts. Svira sasniegs pieturu, kas iepriekš bija roku darbs. Pievienojiet vākam skrūvju kārbu un izveidojiet tajā caurumu, lai noturētu ultraskaņas sensoru pareizajā stāvoklī. Pārliecinieties, vai kabeļi ir pareizi piestiprināti pie vāka ar lenti.
4. solis: programmatūras daļa un datu iegūšana
Attiecībā uz programmatūras daļu mēs izmantojām python programmēšanas valodu. Programma tiek saglabāta SD kartē, kuru pēc ieslēgšanas darbinās Raspberry Pi. Elektroinstalācijas shēma ir pieejama iepriekš. Gpio tapas attēls ir pieejams visiem aveņu veidiem zemāk esošajā saitē:
www.raspberrypi-spy.co.uk/2012/06/simple-g…
Kustības detektora nomaiņai ir iespējams izmantot ultraskaņas sensoru, jums vienkārši jāizveido kodā "if loop".
Kā minēts iepriekš, dati par tvertnes piepildīšanas līmeni tiek pārsūtīti uz vietni, kas izveidota vietnē wix.com. Šajā vietnē jūs varat atrast dažādas cilnes, kurās tiek apkopoti komandas locekļi, aparatūras un programmatūras prezentācija … Interesanta cilne patiesībā ir cilne "Datu bāze", kas apkopo informāciju par atkritumu daudzumu tieši no SmartBin un izveido grafiku ar datiem. Diagramma parāda pildījuma līmeņa attīstību. Vietnē ir iespējams redzēt vai lejupielādēt datus. Zemāk esošā saite ir mūsu izmantotā vietne, un tā parādīs, kā lasīt un rakstīt Google lapās, izmantojot python:
www.makeuseof.com/tag/read-write-google-sh…
Attiecībā uz koda "autorun daļu" terminālī ierakstiet: sudo nano/etc/xdg/lxsession/LXDE-pi/autostart
Pēc tam tikko atvērtā skripta beigās ierakstiet šīs divas koda rindiņas: python /home/pi/main.py & python /home/pi/csvcontrol.py &
Lai saglabātu aurorun, nospiediet: C trl + O Pēc tam nospiediet: Enter Tad nospiediet: C trl + X
Ierakstiet kā pēdējo koda rindiņu: sudo reboot
Jūs varat arī lejupielādēt pielikumu, kas ir pilns projektam izmantotais pitona kods. Abi kodi tiek palaisti vienlaikus!
Šeit ir kods main.py:
importēt RPi. GPIO kā GPIOimport datetime importēšanas laiku importēt csv
GPIO.setmode (GPIO. BCM)
GPIO.setwarnings (nepatiess)
kapteinisP = 7
servo = 17
GPIO iestatīšana (servo, GPIO. OUT)
GPIO.setup (capteurP, GPIO. IN)
pwm = GPIO. PWM (17, 50)
GPIO iestatīšana (5, GPIO. OUT)
GPIO.setup (6, GPIO. OUT) GPIO.setup (13, GPIO. OUT) GPIO.setup (19, GPIO. OUT) GPIO.setup (20, GPIO. OUT) GPIO.setup (21, GPIO. OUT) GPIO iestatīšana (26, GPIO. OUT)
Trig = 23
Atbalss = 24
GPIO iestatīšana (Trig, GPIO. OUT)
GPIO iestatīšana (Echo, GPIO. IN)
GPIO.setwarnings (nepatiess)
GPIO.izvade (5, nepatiesa)
GPIO.output (6, False) GPIO.output (13, False) GPIO.output (19, False) GPIO.output (20, False) GPIO.output (21, False) GPIO.output (26, False)
GPIO.output (Trig, False)
timeset = time.time ()
attālums = 100 atmiņa = 0 laiks. miega (2) pwm. sākums (12,5)
kamēr taisnība:
timetac = time.time (), ja GPIO.input (capteurP) un timetac-timeset0.9: pwm. ChangeDutyCycle (2.5) time.sleep (0.2) atmiņa = -0,5 pwm. ChangeDutyCycle (0) timetac = time.time () time.sleep (0,5), ja timetac-timeet> 15 vai atmiņa> 0,4: ja atmiņa> 0,4: pwm. ChangeDutyCycle (2.5) time.sleep (1) x diapazonā (0, 1): # GPIO.output (Trig, True) time.sleep (0.01) GPIO.output (Trig, False)
kamēr GPIO.input (Echo) == 0 un timetac-timeset <17: timetac = time.time () debutImpulsion = time.time ()
kamēr GPIO.input (atbalss) == 1:
finImpulsion = time.time (), ja timetac-timeset <17: distance1 = round ((finImpulsion-debitImpulsion) * 340 * 100 /2, 1) distance2 = distance if (distance1-distance2) <1 and (distance2-distance1) 0.4: dis = apaļš ((60 attālums)*5/6, 1) ar atvērtu ('capteur.csv', 'w') kā csvfile: capteurwriter = csv.writer (csvfile) time_str = datetime.datetime.strftime (datetime.datetime.now (), '%Y-%m-%d%H:%M:%S') print ('Time: {0} Quantitee: {1}'. format (time_str, dis)) kapteinis. writeow ([time_str, dis]) atmiņa = -0,1, ja attālums <52,5: GPIO.output (5, True) cits: GPIO.output (5, False), ja attālums <45: GPIO. output (6, True) cits: GPIO.izvade (6, nepatiesa), ja attālums <37,5: GPIO.izvade (13, patiesa) cits: GPIO.izvade (13, nepatiesa), ja attālums <30: GPIO.izvade (19, patiesa) cits: GPIO.izvade (19, nepatiess), ja attālums <22,5: GPIO.izvade (20, patiesa) cits: GPIO.izvade (20, nepatiesa), ja attālums <15: GPIO.izvade (21, patiesa) cits: GPIO.izvade (21, nepatiesa) ja attālums <7.5: GPIO.output (26, True) cits: GPIO.output (26, False)
Šeit ir kods csvcontrol.py. Neaizmirstiet ielīmēt izveidoto ".json" failu tajā pašā main.py direktorijā. Fails ".json" ir izveidots, izmantojot google API. Attēlos ir pieejams ekrānuzņēmums.
importēt datetimeimport laiks importēt csv importēt gspread
no oauth2client.service_account importēšanas ServiceAccountCredentials
no laika importēšanas miega importa izsekošana
timec2 = 'lol'
kamēr True: time.sleep (5) loc = ('capteur.csv') ar atvērtu (loc) kā csvfile: readCSV = csv.reader (csvfile, delimiter = ',') rindai readCSV: print (rinda [0]) timec = rinda [0] drukāt ([1] rinda) attālums = rinda [1] attālums = peldēt (str (attālums)), ja laiksc2! = timec: timec2 = timec print ('Laiks: {0} Kvantīts: { 1} '. Formāts (timec, distance))
DARBĪBAS JOMAS = ['https://www.googleapis.com/auth/spreadsheets', "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/ braukt "]
akreditācijas dati = ServiceAccountCredentials.from_json_keyfile_name ('client_secret.json', SCOPES) gc = gspread.authorize (akreditācijas dati) wks = gc.open ("graph"). sheet1 wks = wks.append_row ((timec, distance))
Ieteicams:
Arduino brīdinājuma sistēma par automašīnas novietošanu atpakaļgaitā Soli pa solim: 4 soļi
Arduino brīdinājuma sistēma par automašīnas novietošanu atpakaļgaitā Soli pa solim: Šajā projektā es izveidošu vienkāršu Arduino automašīnas atpakaļgaitas stāvvietas sensora shēmu, izmantojot Arduino UNO un ultraskaņas sensoru HC-SR04. Šo uz Arduino bāzēto automašīnas reverso brīdinājuma sistēmu var izmantot autonomai navigācijai, robotu diapazonam un citiem diapazoniem
Soli pa solim datora veidošana: 9 soļi
Soli pa solim datora veidošana: Piegādes: Aparatūra: mātesplateCPU & CPU dzesētājs PSU (barošanas bloks) Krātuve (HDD/SSD) RAMGPU (nav nepieciešams) Korpuss Instrumenti: skrūvgriezis ESD rokassprādze/matermālā pasta ar aplikatoru
Trīs skaļruņu shēmas -- Soli pa solim apmācība: 3 soļi
Trīs skaļruņu shēmas || Soli pa solim apmācība: Skaļruņu ķēde pastiprina no vides saņemtos audio signālus uz MIC un nosūta to skaļrunim, no kura tiek radīts pastiprināts audio. Šeit es parādīšu trīs dažādus veidus, kā izveidot šo skaļruņu shēmu, izmantojot:
Akustiskā levitācija ar Arduino Uno soli pa solim (8 soļi): 8 soļi
Akustiskā levitācija ar Arduino Uno soli pa solim (8 soļi): ultraskaņas skaņas pārveidotāji L298N līdzstrāvas adaptera strāvas padeve ar vīriešu līdzstrāvas tapu Arduino UNOBreadboard un analogie porti koda konvertēšanai (C ++)
SmartBin: 8 soļi
SmartBin: Este é um projeto para um system inteligente de coletas, no quality os caminh õ es de lixo recebem dados das lixeiras, identificando a quantidade de lixo presente em cada uma delas, e uma rota de coleta tra ç ada, com base nas information