ARDUINO BAZLI YAĞ YOĞUNLAŞTIRICI: 11 Adım (Resimlerle)

ARDUINO BAZLI YAĞ YOĞUNLAŞTIRICI: 11 Adım (Resimlerle)

İçindekiler:

Anonim

hepimiz seviyoruz Gıda bu doğru değil mi? Tabii ki evet, herkes hayatında bir kez yemek yapmayı denedi ve mükemmel tarif için kesin miktarda yağ alma mücadelesini zaten biliyor, bu yüzden işte onu düzeltmenize yardımcı olacak bir proje, sonuna kadar yönergeleri izleyin ve siz güzel olacak Arduino Bazlı YAĞ Dağıtıcı

Gereçler:

1. Adım: Videoyu İzleyin

2. Adım: Tasarım

' tekerlekleri çalıştırmak için, ilk önce bir tekerlek gerekir ? Bu yüzden bazı projeler yapmak için dizayn en önemli yönüdür.

önce son ürünümün neye benzemesi gerektiği hakkında bir fikir edinmek için basit bir kağıt çizim hazırladım!

ondan sonra, bileşenlerin boyutlarını ölçtüm ve gereken alan miktarı, kabın boyutu vb. gibi diğer parametreleri dikkate alıyorum.

ekranı ve UI Düğmelerini bir arada tuttum Açı Böylece kontrolü kolay ve biraz daha kullanıcı dostu.

3. Adım: Gereksinimleri Toplayın

Başarımızı oluşturmak için aşağıdaki öğelere ihtiyacımız olacak ARDUINO Bazlı YAĞ Dağıtıcı

  1. I2C L.C.D. Görüntüle: http: //www.gearbest.com/other-accessories/pp_216 …
  2. Arduino UNO: http: //www.gearbest.com/boards-shields/pp_228782 ….
  3. N Kanalı Mosfet: http: //www.amazon.in/Generic-IRFZ44N-N-Channel-Tr …
  4. Push Button Anahtarı: http: //www.gearbest.com/diy-parts-components/pp _…
  5. Prototip kurulu: http: //www.gearbest.com/diy-parts-components/pp_1 …
  6. Pompa: http: //www.amazon.in/NASA-Tech-Water-Priming-Spr …
  7. Dirençler: (330,620,1k, 2k, 3,3k)http: //www.gearbest.com/diy-parts-components/pp_1 …
  8. 6mm Boru: http: //www.amazon.in/AGS-Irrigation-Garden-Water …
  9. Plastik Konteyner (Hazne) http: //www.gearbest.com/dinnerware/pp_929200.htm …
  10. Jumper Teli http: //www.gearbest.com/other-accessories/pp_278 …
  11. (isteğe bağlı) 12V Şerit LED: http: //www.gearbest.com/led-strips/pp_932294.htm …

Adım 4: Araçları Topla

bu yapı için bazı araçlara da ihtiyacımız olacak

  1. Lehim demir:http: //www.gearbest.com/soldering-supplies/pp_009 …
  2. Tornavida:http: //www.gearbest.com/screwdriver-screwdriver-s …
  3. Kesici: http: //www.gearbest.com/home-gear/pp_00991810512 …
  4. Makas: http: //www.gearbest.com/meat-poultry-tools/pp_666 …
  5. Lehim teli: http: //www.gearbest.com/hand-tools/pp_193500.html …

Adım 5: Devreleri Kurun

Devre için ARDUINO UNO'yu I2C L.C.D. Ekran için, kullanıcı ile etkileşimde bulunmak için Düğmelere, yağ akışını kontrol etmek için DC Peristaltik pompa, Kontrol Motoruna Geçiş olarak N Kanal Mosfet kullanın.

bağlantı kolaylığı ve anlama için elektroniği 3 bloğa ayıracağız.

1. Kontrol Ünitesi

2. MOSFET Modülü

3. Tuş Takımı Modülü

4. I2C L.C.D.

KLAVYE

giriş (DATA) -den Tuş Takımı Modülü Pin'e A0, Vcc için D8

GND için GND

Mosfet Kontrolü

DİJİTAL PIN 2 için Kontrol Pimi MOSFET MODÜLÜ

Zemin için Zemin

Ekran Çıktısı

SCL / A5 için SCL ve SDA / A4 için SDA LCD ve VCC için VCC, Zemin için Zemin

Motor

Motor Mosfet Modülünden M + ve M- iğneler, Harici güç Mosfet Modülüne VCC ve GND

Prototip panelini kullanma konusunda uzman değilseniz, Sağlananları kullanabilirsiniz. Gerber Dosyası PCB Online Sipariş Verme ve Yukarıdaki Bağlantıları Takip Etme

6. Adım: Kodu Yükleyin

/ * ================================================ ============================================================================= ve öğreticiler ****** http://www.youtube.com/channel/UCM6rbuieQBBLFsxszWA85AQ?sub_confirmation=1 =============================================== ================================================= * / #include Wire.h #include LiquidCrystal_I2C SıvıCrystal_I2C lcd (0x27, 16, 2); int tuş takımı_pin = A0; int Keypad_value = 0; int Keypad_value_old = 0; char Btn_push; int Pompa1 = 2; int hacim = 10; int volumeOld = 10; int Pump1State = 0; int MenuPage = 1; int MenuPageOld = 1; uzun öncekiMillis = 0; işaretsiz uzun akımMillis; uzun aralık = 1000; işaretsiz uzun çarpan = 450; // kalibrasyona bağlı olarak değiştirilecek değer // çarpanı = 1 ml sıvı boşluğunu doldurmak için gerekli milisaniye; setup () {lcd.init (); // 2x16 tipi bir LCD ekranın başlangıç ​​durumuna getirin lcd.backlight (); pinMode (Pump1, OUTPUT); pinMode (10, ÇIKIŞ); lcd.setCursor (0,0); lcd.print ("Kritik Görev"); lcd.setCursor (2,1); lcd.print ("Yağ Verici"); //lcd.clear (); Gecikme (1000); MenuDisplay (MenuPage); analogWrite (10,50); Gecikme (1000); pinMode (8, ÇIKIŞ); digitalWrite (8, HIGH); } void loop () {Btn_push = ReadKeypad (); // Eğer (Btn_push == 'L') eğer menüyü değiştir. MenuPage = 1; eğer (Btn_push == 'R') MenuPage = 2; if (MenuPage! = MenuPageOld) {MenuDisplay (MenuPage); MenuPageOld = MenuPage; } if (MenuPage == 1) {if (Btn_push == 'U' && cilt <100) hacim + = 1; eğer (Btn_push == 'D' && cilt> 0) hacim- = 1; if (volumeOld! = volume) // yeni birim aldığında lcd güncelleme {lcd.setCursor (8,0); lcd.print (hacim); lcd.print ("ml"); volumeOld = hacim; } if (Btn_push == 'S') {RunPump (hacim); MenuDisplay (MenuPage); }} if (MenuPage == 2) {if (Btn_push == 'S') {if (! Pump1State) {digitalWrite (Pump1,1); lcd.setCursor (0,1); lcd.print ("serbest akış çalıştırması"); Pump1State = 1; } else {digitalWrite (Pompa1,0); lcd.setCursor (0,1); lcd.print ("serbest akış durması"); Pump1State = 0; } gecikme (100); }} gecikme (200); } // --------------- Döngünün sonu () döngü --------------------- void MenuDisplay (int sayfa) {anahtar (sayfa) {vaka 1: lcd.clear (); lcd.setCursor (0,0); lcd.print ("Cilt:"); lcd.setCursor (8,0); lcd.print (hacim); lcd.print ("ml"); break; durum 2: lcd.clear (); lcd.clear (); lcd.setCursor (0,0); lcd.print ("MANUEL MODU"); break; }} void RunPump (işaretsiz uzun ml) {öncekiMillis = millis (); currentMillis = öncekiMillis; aralık = ml * çarpan; digitalWrite (Pump1,1); lcd.setCursor (4,1); lcd.print ("ml"); while (currentMillis - öncekiMillis <interval) {currentMillis = millis (); lcd.setCursor (0, 1); lcd.print ((geçerliMillis - öncekiMillis) / 1000); } lcd.setCursor (0, 1); lcd.print ((geçerliMillis - öncekiMillis) / 1000); digitalWrite (Pump1,0); Gecikme (1000); } char ReadKeypad () {/ * Tuş takımı düğmesi analog Değer tuşa basılmadı 1023 seçim 741 sola 503 aşağı 326 yukarı 142 sağ 0 * / Keypad_value = analogRead (keypad_pin); if (Keypad_value <100) 'R' döndürür; Aksi halde (Keypad_value <200) 'U' döndürür; Aksi halde (Keypad_value <400) 'D' döndürür; Aksi takdirde (Tuş takımı_ değeri <600) 'L' döndürür; Aksi halde (Keypad_value <800) 'S' döndürürse; aksi halde 0 döndürür; }

Adım 7: Tankı Hazırlayın (Rezervuar)

Tankı hazırlamak, ilk kabı sakla ve motor düz bir yüzeyde, ve motor girişini işaretleyin Sıvı için ve oluşturarak devam kaptaki delik, bundan sonra, astarı takın ve Sıcak Tutkal kullanın için Mühür Astar ve Rezervuardan biraz su geçirerek sızıntı olmadığından emin olun

Adım 8: Kasayı Hazırlayın

Ekonomik ve hazır olan en iyi seçenek olmayan montaj tahtası kullandım. bu muhafazayı yapmak için

  1. Bir kalem kullanarak 2. Adımdaki Boyutları işaretleyin.
  2. Makas veya Kutu Kesici kullanarak Sağ, Sol, Üst, Arka, Alt, Ön Panel, Ön Taraf parçalarını kesin.
  3. Tüm tarafını kapatmak için HOT Glue gun aletini kullanın.
  4. Ekstra destek sağlamak için herhangi bir boyutta kesilmiş küçük dik açılı üçgen kullanın.
  5. M3 somun ve civata kullanarak L.C.D'yi Ön Panel üzerine monte edin.
  6. Tuş Takımı Modülünü Belirlenen Deliklere sabitlemek için Sıcak Tutkal kullanın.
  7. Kalan delikleri doldurmak için Kutuya Son Olarak Sıcak Tutkal ile Dokunun.

Adım 9: (isteğe bağlı) Işık Ekleme

Kutunun içini aydınlatmak için 12V şerit LED kullandım.

Takmak için, sadece bir damla Sıcak Tutkal uygulayın ve Dağıtıcının Boru Çıkışının hemen yukarısında BOX'un iç kısmından Uzunluğu Çalışın

Adım 10: Kalibrasyon (EN ÖNEMLİ)

sistemi kalibre etmek, temelde doldurmak için gereken süreyi ölçmek 1 mililitre sıvının X milisaniye.

Hangi için kullandım deney şişesi az çözünürlüğe sahipti, zaman gerekli doldurmak 100 ml sıvının ve böylece hesaplanan akış hızı, olduğu ortaya çıktı 450 mikrosaniye benim durumumda.

adımlar

  1. Kronometreyi sıfırla.
  2. Beheri temizleyin ve Dispenser Çıkışının altına yerleştirin.
  3. Kullanıcı El Kitabı Moduna gidin.
  4. Testi başlatmak için Başlat'a basın.
  5. Hacmi gözlemleyin, hacim 100 ml olduğunda Saatin DURDURULMASI Tam ve Aşağı Not.
  6. Saniye Okuma'yı 100'e bölün (çünkü 1 ml zaman bilmemiz gerekir)
  7. 1000 ile çarpın, çarpma faktörünüzü elde edin
  8. Satır 32'deki Çarpma Faktörü değiştirin.
  9. hata varsa test edin ve tekrarlayın.

Adım 11: Sonuç (Muhtemel Değişiklikler)

Bu projeyi kesin miktarda yağ elde etmek için başarıyla anladık ve inşa ettik, aynı zamanda sistemi özel uygulamamıza göre kalibre ettik.

Bu aynı proje su, meyve suyu veya herhangi bir sıvıyı dağıtmak için kullanılabilir (her sıvı farklı hacme sahip olduğundan kalibre etmeyi unutmayın).

ayrıca bir Kokteyl Makinesi yapmak için birkaç motor eklenebilir.