Talaan ng mga Nilalaman:
- Hakbang 1: Kagamitan ng SmartBin
- Hakbang 2: Paggawa ng Raspberry Box at LED Bar
- Hakbang 3: Ang Bahagi ng Lid
- Hakbang 4: Bahagi ng Software at Pagkuha ng Data
Video: SmartBin: 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:13
Ang pangunahing layunin ng proyektong ito ay upang lumikha ng isang elektronikong aparato na gumagamit ng hindi bababa sa isang Raspberry Pi. Ang koponan ay gawa sa 5 hinaharap na mga mechanical engineer at isang automation engineer. Ang aming proyekto ay binubuo ng paggawa ng isang basurahan na bubukas at isara ang awtomatikong na-trigger ng isang paggalaw ng paa sa ilalim ng detektor ng paggalaw na matatagpuan sa gitna sa harap ng basurahan. Ginagamit ang isang Wifi USB stick upang magpadala ng data sa isang website. Ang bin na ito ay tinawag na "The SmartBin". Ang nakakatawang video sa itaas ay ipinakikilala ang aming makabagong SmartBin.
Upang maisakatuparan ang proyektong ito at ang kamangha-manghang SmartBin na ito, maraming mga tool ang kinakailangan:
- Isang metro
- Malakas na pandikit
- Isang adhesive tape
- Isang kahoy na nakita
- Isang distornilyador
- Isang drill machine
- Isang salansan
- Isang kutsilyo
Hakbang 1: Kagamitan ng SmartBin
Ang SmartBin ay binubuo ng berde, kahel at pula na mga LED light na inilalagay sa isang kabit sa kaliwang bahagi ng basurahan na magpapahiwatig kung gaano ito napunan. Ang mga ilaw na ito ay malinaw na makikita at aalerto ang gumagamit kung kinakailangan na palitan ang basurahan. Ang wikang ginagamit sa programa ay ang Python. Ang sinusukat na antas ng pagpuno ng basura ay inililipat sa sumusunod na website:
Narito ang mga elemento na nagamit ngunit madali kang makakahanap ng isang kahaliling solusyon:
- 1 Bin (bin "cover ng swing")
- 1 Servomotor upang buksan ang basurahan
- 1 Raspberry Pi 2
- 2 Mga power supply (5V charger ng mobile phone at 6V power supply) upang maibigay ang Raspberry Pi at ang servomotor
- 1 Ultrasonic sensor upang masukat ang antas ng pagpuno ng basurahan
- Ang ilang mga LED upang ipakita ang antas ng pagpuno (4 berde, 2 kahel at 1 pula)
- 1 Ultrasonic motion detector upang makita ang isang kilusan
- 1 16Gb SD-card
- Mga de-koryenteng resistors (10.000 Ohms, 2000 Ohms at 1000 Ohms)
- 1 WiFi usb stick upang paganahin ang wireless transmission sa website.
- 1 Breadboard at ilang mga Raspberry cable
Ang tinatayang presyo ng pagmamanupaktura ay 80 €.
Hakbang 2: Paggawa ng Raspberry Box at LED Bar
Upang magawa ang kahon na Raspberry, gumamit ng lagari sa kahoy. I-fasten ang bawat gilid ng kahon ng mga rivet upang magmukhang malinis ito. Tulad ng iminumungkahi ng pangalan nito, ang kahon na ito ay naglalaman ito hindi lamang ang Raspberry Pi ngunit isasama rin ang sensor ng paggalaw na ilalagay mo sa ibaba. Kapag nabuo na ang kahon, pintura ito sa parehong kulay ng basurahan. Maaaring gamitin ang teknolohiya sa pag-print ng 3D upang likhain ang kahong ito.
Para sa paggawa ng LED bar, gumamit ng isang electric duct kung saan ka drill hole upang payagan ang mga ilaw na LED na mai-install. Ang LED bar ay dapat ding lagyan ng kulay. Kapag handa na ang lahat, i-install ang mga LED sa maliit na tubo at gawin ang koneksyon sa kuryente. Magbayad ng pansin sa maayos na bilang ng bawat LED cable na may adhesive tape. Tutulungan ka nitong makilala ang bawat LED sa panahon ng mga kable.
Panghuli, ikabit ang kahon at ang LED bar sa harap ng iyong basurahan.
Hakbang 3: Ang Bahagi ng Lid
Tungkol sa takip ng basurahan, ang unang hakbang ay upang ipako ang servomotor sa talukap ng mata. Ang isang extension ng leverage ay kailangang gawin dati. Ang pingga ay tatama sa isang hintuan na dating gawa ng kamay. Maglakip ng isang kahon ng tornilyo sa takip at gumawa ng isang butas dito upang hawakan ang ultrasonic sensor sa tamang posisyon. Tiyaking tama ang iyong pagkakabit ng mga kable sa takip gamit ang tape.
Hakbang 4: Bahagi ng Software at Pagkuha ng Data
Tungkol sa bahagi ng software, ginamit namin ang wika ng programang sawa. Ang programa ay nai-save sa SD-card na tatakbo ng Raspberry Pi kapag ito ay naka-on. Ang scheme ng mga kable ay magagamit sa itaas. Ang imahe ng mga pin ng Gpio ay magagamit para sa lahat ng mga uri ng raspberry sa link sa ibaba:
www.raspberrypi-spy.co.uk/2012/06/simple-g…
Posibleng gumamit ng isang ultrasonic sensor upang mapalitan ang detector ng paggalaw, kailangan mo lamang lumikha ng isang "kung loop" sa code.
Tulad ng nabanggit sa itaas, ang data tungkol sa antas kung saan napunan ang basurahan ay inililipat sa isang website na nilikha sa wix.com. Sa website na ito, mahahanap mo ang iba't ibang mga tab na nagtitipon ng mga miyembro ng koponan, pagtatanghal ng hardware at software,… Ang kagiliw-giliw na tab ay talagang ang tab na "Database" na nangongolekta ng impormasyon tungkol sa dami ng basurahan na direkta mula sa SmartBin at lumilikha ng isang grap na may data. Ipinapakita ng grap ang ebolusyon ng antas ng pagpuno. Posibleng makita o mag-download ng mga datas mula sa website. Ang link sa ibaba ay ang website na ginamit namin at ipapakita sa iyo kung paano magbasa at magsulat sa mga sheet ng google na may sawa:
www.makeuseof.com/tag/read-write-google-sh…
Tungkol sa "bahagi ng autorun" ng code, isulat sa terminal: sudo nano / etc / xdg / lxsession / LXDE-pi / autostart
Pagkatapos, sa dulo ng script na kung saan ay bubukas lamang, isulat ang dalawang mga linya ng code na ito: python /home/pi/main.py & python /home/pi/csvcontrol.py &
Upang mai-save ang aurorun, pindutin ang: C trl + O Pagkatapos, pindutin ang: Enter Then, press: C trl + X
Sumulat bilang huling linya ng code: sudo reboot
Nagagawa mo ring i-download ang kalakip na kung saan ay ang buong python code na ginamit para sa proyekto. Ang parehong mga code ay tumatakbo nang sabay!
Narito ang pangunahing.py code:
i-import ang RPi. GPIO bilang GPIOimport datime import time import csv
GPIO.setmode (GPIO. BCM)
GPIO.setwarnings (Mali)
capteurP = 7
servo = 17
GPIO.setup (servo, GPIO. OUT)
GPIO.setup (capteurP, GPIO. IN)
pwm = GPIO. PWM (17, 50)
GPIO.setup (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.setup (26, GPIO. OUT)
Trig = 23
Echo = 24
GPIO.setup (Trig, GPIO. OUT)
GPIO.setup (Echo, GPIO. IN)
GPIO.setwarnings (Mali)
GPIO.output (5, Mali)
GPIO.output (6, Mali) GPIO.output (13, Mali) GPIO.output (19, Mali) GPIO.output (20, Mali) GPIO.output (21, Mali) GPIO.output (26, Mali)
GPIO.output (Trig, Mali)
Oras = oras. oras ()
distansya = 100 memorya = 0 oras. pagtulog (2) pwm.start (12.5)
habang Totoo:
timetac = time.time () kung GPIO.input (capteurP) at timetac-timeset0.9: pwm. ChangeDutyCycle (2.5) time.s Sleep (0.2) memory = -0.5 pwm. ChangeDutyCycle (0) timetac = time.time () oras. tulog (0.5) kung timetac-timeset> 15 o memorya> 0.4: kung memorya> 0.4: pwm. ChangeDutyCycle (2.5) oras. tulog (1) para sa x sa saklaw (0, 1): # GPIO.output (Trig, Totoo) oras. Natutulog (0.01) GPIO.output (Trig, Mali)
habang GPIO.input (Echo) == 0 at timetac-timeset <17: timetac = time.time () debutImpulsion = time.time ()
habang GPIO.input (Echo) == 1:
finImpulsion = time.time () kung timetac-timeset <17: distance1 = bilog ((finImpulsion - debutImpulsion) * 340 * 100/2, 1) distansya2 = distansya kung (distansya1-distansya2) <1 at (distansya2-distansya1) 0.4: dis = bilog ((60-distansya) * 5/6, 1) na may bukas ('capteur.csv', 'w') bilang csvfile: capteurwriter = csv.writer (csvfile) time_str = datime.datime.strftime (datime.datetime.now (), '% Y-% m-% d% H:% M:% S') print ('Oras: {0} Quantitee: {1}'. format (time_str, dis)) capteurwriter. writerow ([time_str, dis]) memorya = -0.1 kung distansya <52.5: GPIO.output (5, True) iba pa: GPIO.output (5, Mali) kung distansya <45: GPIO.output (6, True) iba pa: GPIO.output (6, Mali) kung distansya <37.5: GPIO.output (13, True) iba pa: GPIO.output (13, Mali) kung distansya <30: GPIO.output (19, True) iba pa: GPIO.output (19, Mali) kung distansya <22.5: GPIO.output (20, True) iba pa: GPIO.output (20, Mali) kung distansya <15: GPIO.output (21, True) iba pa: GPIO.output (21, Mali) kung distansya <7.5: GPIO.output (26, True) iba pa: GPIO.output (26, Mali)
Narito ang csvcontrol.py code. Huwag kalimutang i-paste ang nilikha na ".json" na file sa parehong direktoryo ng main.py. Ang file na ".json" ay nilikha gamit ang google API. Magagamit ang isang screenshot sa mga larawan.
i-import ang datimeimport time import csv import gspread
mula sa oauth2client.service_account import ServiceAccountCredentials
mula sa oras na pag-import ng pagtulog pag-import ng traceback
timec2 = 'lol'
habang Totoo: time.s Sleep (5) loc = ('capteur.csv') na may bukas (loc) bilang csvfile: readCSV = csv.reader (csvfile, delimiter = ',') para sa row sa readCSV: print (row [0]) timec = row [0] print (row [1]) distansya = row [1] distansya = float (str (distansya)) kung timec2! = timec: timec2 = timec print ('Oras: {0} Quantitee: { 1} 'format (timec, distansya))
SCOPES = ['https://www.googleapis.com/auth/spreadsheets', "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/ drive "]
mga kredensyal = ServiceAccountCredentials.from_json_keyfile_name ('client_secret.json', SCOPES) gc = gspread.authorize (credentials) wks = gc.open ("graph"). sheet1 wks = wks.append_row ((timec, distansya))
Inirerekumendang:
Arduino Car Reverse Parking Alert System - Hakbang sa Hakbang: 4 na Hakbang
Arduino Car Reverse Parking Alert System | Hakbang sa Hakbang: Sa proyektong ito, magdidisenyo ako ng isang simpleng Arduino Car Reverse Parking Sensor Circuit gamit ang Arduino UNO at HC-SR04 Ultrasonic Sensor. Ang Arduino based Car Reverse alert system na ito ay maaaring magamit para sa isang Autonomous Navigation, Robot Ranging at iba pang range r
Hakbang sa Hakbang Pagbubuo ng PC: 9 Mga Hakbang
Hakbang sa Hakbang ng PC Building: Mga Pantustos: Hardware: MotherboardCPU & CPU coolerPSU (Power supply unit) Storage (HDD / SSD) RAMGPU (hindi kinakailangan) CaseTools: ScrewdriverESD bracelet / matsthermal paste w / applicator
Tatlong Loudspeaker Circuits -- Hakbang-hakbang na Tutorial: 3 Mga Hakbang
Tatlong Loudspeaker Circuits || Hakbang-hakbang na Tutorial: Ang Loudspeaker Circuit ay nagpapalakas ng mga audio signal na natanggap mula sa kapaligiran papunta sa MIC at ipinapadala ito sa Speaker mula sa kung saan ginawa ang pinalakas na audio. Dito, ipapakita ko sa iyo ang tatlong magkakaibang paraan upang magawa ang Loudspeaker Circuit na ito gamit ang:
Hakbang-hakbang na Edukasyon sa Robotics Na May Kit: 6 Mga Hakbang
Hakbang-hakbang na Edukasyon sa Robotics Gamit ang isang Kit: Matapos ang ilang buwan ng pagbuo ng aking sariling robot (mangyaring sumangguni sa lahat ng mga ito), at pagkatapos ng dalawang beses na pagkabigo ng mga bahagi, nagpasya akong bumalik at muling isipin ang aking diskarte at direksyon. Ang karanasan ng ilang buwan ay kung minsan ay lubos na nagbibigay-pakinabang, at
SmartBin: 8 Hakbang
SmartBin: Este é um projeto para um sistema inteligente de coletas, no qual os caminh õ es de lixo recebem magiging das lixeiras, identificando a quantidade de lixo presente em cada uma delas, e uma rota de coleta tra ç ada, com base nas informa