Talaan ng mga Nilalaman:

UltraSonic Liquid Level Controller: 6 Hakbang (na may Mga Larawan)
UltraSonic Liquid Level Controller: 6 Hakbang (na may Mga Larawan)

Video: UltraSonic Liquid Level Controller: 6 Hakbang (na may Mga Larawan)

Video: UltraSonic Liquid Level Controller: 6 Hakbang (na may Mga Larawan)
Video: Pwede ba pang miss universe #MissIgado 2024, Nobyembre
Anonim
UltraSonic Liquid Level Controller
UltraSonic Liquid Level Controller

Panimula Tulad ng malamang na alam mo, ang Iran ay may tuyong panahon, at may kakulangan ng tubig sa aking bansa. Minsan, lalo na sa tag-init, makikita na pinuputol ng gobyerno ang tubig. Kaya't ang karamihan sa mga apartment ay may tangke ng tubig. Mayroong isang 1500 litro na tank sa aming apartment na nagbibigay ng tubig. Gayundin, mayroong 12 mga yunit ng tirahan sa aming apartment. Bilang isang resulta, maaasahan na ang tanke ay walang laman kaagad. Mayroong isang pump ng tubig na nakakabit sa tanke na nagpapadala ng tubig sa gusali. Kailan man walang laman ang tanke, gumagana ang bomba nang walang tubig. Ang sitwasyong ito ay nagdudulot ng pagtaas sa temperatura ng motor, at sa oras, maaari itong maging sanhi ng pagkasira ng bomba. Ilang oras ang nakakalipas, ang pagkabigo ng bomba na ito ay nangyari sa pangalawang pagkakataon para sa amin, at pagkatapos buksan ang motor, nakita namin na nasunog ang mga wire ng coil. Matapos naming mapalitan ang bomba, upang maiwasang muli ang problemang ito, nagpasya akong gumawa ng isang antas ng tubig na taga-kontrol. Plano kong gumawa ng isang circuit upang mabawasan ang supply ng kuryente ng bomba tuwing ang tubig ay dumating sa ibaba ng mababang limitasyon sa tank. Hindi gagana ang bomba hanggang sa tumaas ang tubig sa isang mataas na limitasyon. Matapos maipasa ang mataas na limitasyon, ikonekta muli ng circuit ang supply ng kuryente. Sa simula, naghanap ako sa internet upang makita kung makakahanap ako ng angkop na circuit. Gayunpaman, wala akong nahanap na naaangkop. Mayroong ilang mga tagapagpahiwatig ng tubig na nakabatay sa Arduino, ngunit hindi malutas ang aking problema. Bilang isang resulta, napagpasyahan kong idisenyo ang aking antas ng kontrol sa tubig. Isang all-in-one na pakete na may isang prangkahang graphic na interface ng gumagamit upang magtakda ng mga parameter. Gayundin, sinubukan kong isaalang-alang ang mga pamantayan ng EMC upang matiyak na ang aparato ay gumagana ng wasto sa iba't ibang mga sitwasyon.

Hakbang 1: Prinsipyo

Prinsipyo
Prinsipyo

Marahil alam mo ang prinsipyo dati. Kapag ang signal ng ultrasonic pulse ay pinalabas patungo sa isang bagay, ito ay makikita ng object at ang echo ay bumalik sa nagpadala. Kung kinakalkula mo Ang oras na naglakbay ng ultrasonic pulse, mahahanap mo ang distansya ng bagay. Sa aming kaso, ang item ay ang tubig.

Tandaan na kapag nakita mo ang distansya sa tubig, kinakalkula mo ang dami ng walang laman na puwang sa tangke. Upang makuha ang dami ng tubig, kailangan mong bawasan ang kinakalkula na dami mula sa kabuuang dami ng tanke.

Hakbang 2: Sensor, Powersupply at Controller

Sensor, Powersupply at Controller
Sensor, Powersupply at Controller
Sensor, Powersupply at Controller
Sensor, Powersupply at Controller
Sensor, Powersupply at Controller
Sensor, Powersupply at Controller
Sensor, Powersupply at Controller
Sensor, Powersupply at Controller

Hardware

Para sa sensor, gumamit ako ng JSN-SR04T waterproof ultrasonic sensor. Ang gawain sa pagtatrabaho ay tulad ng HC-SR04 (echo at trig pin).

Mga pagtutukoy:

  • Distansya: 25cm hanggang 450 cm
  • Nagtatrabaho boltahe: DC 3.0-5.5V
  • Kasalukuyang nagtatrabaho: < 8mA
  • Katumpakan: ± 1cm
  • Dalas: 40khz
  • Paggawa ng temperatura: -20 ~ 70 ℃

Tandaan na ang controller na ito ay may ilang mga limitasyon. halimbawa: 1- Hindi masusukat ng JSN-SR04T ang distansya sa ibaba 25CM, kaya kailangan mong i-install ang sensor ng hindi bababa sa 25CM sa itaas ng ibabaw ng tubig. Bukod dito, ang maximum na pagsukat ng distansya ay 4.5M. Kaya't ang sensor na ito ay hindi angkop para sa malaking tank. 2- ang katumpakan ay 1CM para sa sensor na ito. Bilang isang resulta, batay sa diameter ng tanke, ang resolusyon ng dami na ipapakita ng aparato ay maaaring iba-iba. 3- ang bilis ng tunog ay maaaring magkakaiba batay sa temperatura. Bilang isang resulta, ang kawastuhan ay maaaring maapektuhan ng iba't ibang mga rehiyon. Gayunpaman, ang mga limitasyong ito ay hindi mahalaga sa akin, at angkop ang kawastuhan.

Ang Controller

Gumamit ako ng STM32F030K6T6 ARM Cortex M0 mula sa STMicroelectronics. Maaari mong makita ang detalye ng microcontroller na ito dito.

Ang Power Supply

Ang unang bahagi ay upang i-convert ang 220V / 50Hz (Iran Elektrisidad) sa 12VDC. Para sa hangaring ito, gumamit ako ng HLK-PM12 buck step down power supply module. Ang AC / DC converter na ito ay maaaring mag-convert ng 90 ~ 264 VAC sa 12VDC na may kasalukuyang 0.25A output.

Tulad ng malamang na alam mo, ang inductive load sa relay ay maaaring maging sanhi ng maraming mga problema sa circuit at supply ng kuryente, at ang paghihirap sa supply ng kuryente ay maaaring humantong sa hindi maayos, lalo na sa microcontroller. Ang solusyon ay ihiwalay ang mga power supply. Gayundin, kailangan mong gumamit ng isang snubber circuit sa mga contact na relay. Mayroong maraming mga pamamaraan upang ihiwalay ang mga supply ng kuryente. Halimbawa, maaari kang gumamit ng isang transpormer na may dalawang output. Bukod dito, may mga nakahiwalay na DC / DC converter doon sa isang maliit na sukat na maaaring ihiwalay ang output mula sa input. Gumamit ako ng MINMAX MA03-12S09 para sa hangaring ito. Ito ay isang 3W DC / DC converter na may paghihiwalay.

Hakbang 3: Ang Supervisor IC

Ang Supervisor IC
Ang Supervisor IC

Ayon sa tala ng TI App: Ang isang superbisor ng boltahe (kilala rin bilang isang reset integrated circuit [IC]) ay isang uri ng monitor ng boltahe na sinusubaybayan ang supply ng kuryente ng isang system. Ang mga superbisor ng boltahe ay madalas na ginagamit sa mga processor, boltahe na regulator at mga tagasunod - sa pangkalahatan, kung saan kinakailangan ang boltahe o kasalukuyang sensing. Sinusubaybayan ng mga superbisor ang mga riles ng boltahe upang matiyak ang lakas, nakakakita ng mga pagkakamali at nakikipag-usap sa mga naka-embed na processor upang matiyak ang kalusugan ng system. maaari mong makita ang app na ito tala dito. Kahit na ang mga STM32 Microcontroller ay may built-in na mga superbisor tulad ng power on supply monitor, gumamit ako ng isang panlabas na chip ng superbisor upang matiyak na gagana ang lahat. Sa aking kaso, ginamit ko ang TL7705 mula sa TI. Maaari mong makita ang paglalarawan mula sa website ng Texas Instruments para sa IC sa ibaba: Ang pamilyang TL77xxA ng mga superbisor ng integrated-circuit supply-voltage ay partikular na idinisenyo para magamit bilang mga reset control sa mga system ng microcomputer at microprocessor. Sinusubaybayan ng superbisor ng supply-boltahe ang suplay para sa mga kundisyon ng ilalim ng boltahe sa input ng SENSE. Sa panahon ng power-up, ang output ng RESET ay naging aktibo (mababa) kapag ang VCC ay nakakakuha ng halaga na papalapit sa 3.6 V. Sa puntong ito (ipinapalagay na ang SENSE ay nasa itaas ng VIT +), ang pagpapaandar ng pagpapaandar ng timer ay nagpapagana ng pagkaantala ng oras, pagkatapos kung saan ang output ay RESET at RESET (HINDI) hindi aktibo (mataas at mababa, ayon sa pagkakabanggit). Kapag ang isang kondisyon na nasa ilalim ng boltahe ay nangyayari sa panahon ng normal na operasyon, ang RESET at RESET (HINDI) ay magiging aktibo.

Hakbang 4: Ang Printed Circuit Board (PCB)

Ang Printed Circuit Board (PCB)
Ang Printed Circuit Board (PCB)
Ang Printed Circuit Board (PCB)
Ang Printed Circuit Board (PCB)
Ang Printed Circuit Board (PCB)
Ang Printed Circuit Board (PCB)
Ang Printed Circuit Board (PCB)
Ang Printed Circuit Board (PCB)

Dinisenyo ko ang PCB sa dalawang piraso. Ang una ay ang LCD PCB na konektado sa mainboard na may laso / flat cable. Ang pangalawang bahagi ay ang PCB ng kontroler. Sa PCB na ito, naglagay ako ng supply ng kuryente, microcontroller, ultrasonic sensor at mga kaugnay na bahagi. At pati na rin ang bahagi ng kuryente na ang relay, varistor at snubber circuit. Tulad ng malamang na alam mo, ang mga mechanical relay tulad ng isang relay na ginamit ko sa aking circuit ay maaaring masira kung palagi silang gumagana. Upang mapagtagumpayan ang problemang ito, ginamit ko ang normal na malapit na contact (NC) ng relay. Kaya sa isang normal na sitwasyon, ang relay ay hindi aktibo at karaniwang ang malapit na pakikipag-ugnay ay maaaring magsagawa ng kapangyarihan upang mag-usisa. Tuwing ang tubig ay dumating sa ibaba ng Mababang limitasyon, ang relay ay bubuksan, at ito ay magpaputol sa lakas. Nasabi na, Ito ang dahilan na ginamit ko ang snubber circuit sa mga contact sa NC at COM. Tungkol sa katotohanan na ang bomba ay may mataas na lakas, ginamit ko ang pangalawang 220 relay para dito, at hinihimok ko ito gamit ang relay sa PCB.

Maaari kang mag-download ng mga file ng PCB tulad ng mga file ng Altium PCB at mga Gerber file mula sa aking GitHub dito.

Hakbang 5: Code

Image
Image
Pag-install sa Tank
Pag-install sa Tank

Ginamit ko ang STM32Cube IDE, na isang all-in-one na solusyon para sa pagbuo ng code mula sa STMicroelectronics. Ito ay batay sa Eclipse IDE na may GCC ARM compiler. Gayundin, mayroon itong STM32CubeMX dito. Maaari kang makahanap ng karagdagang impormasyon dito. Sa una, nagsulat ako ng isang code na kasama ang aming pagtutukoy ng tank (Taas at Diameter). Gayunpaman, nagpasya akong baguhin ito sa GUI para sa pagtatakda ng mga parameter batay sa iba't ibang mga pagtutukoy.

Hakbang 6: Pag-install sa Tank

Pag-install sa Tank
Pag-install sa Tank
Pag-install sa Tank
Pag-install sa Tank

Sa huli, gumawa ako ng isang simpleng kahon para maprotektahan ang PCB mula sa tubig. Gayundin, gumawa ako ng isang butas sa tuktok ng tangke upang ilagay ang sensor dito.

Inirerekumendang: