Picproje Elektronik Sitesi

DERLEYİCİLER => PICBasic => Konuyu başlatan: yolcu27 - 02 Mayıs 2016, 19:16:50

Başlık: sıvı seviye kontrol ve lcd
Gönderen: yolcu27 - 02 Mayıs 2016, 19:16:50
Sıvı seviyesini ölçerek lcd ekranda göstermek istiyorum ve aynı zamanda elimi algılayınca 2 sn rölenin çekmesini istiyorum.

aşağı yukarı kafamda birşeyler oluştu mantık hatası varmıdır diye sizlere de sormak istedim açıkcası biraz özetleyeyim


10 tane prop olacak ve sıvının olduğu kapta aralıklarla yerleştireceğim. kaptaki sıvıya +5 v vereceeğim.

her seviyedeki probu pice giriş yapcağım . giriş uçlarını pull down yapacağım.

her seviyede +5 v picin bağlı olduğu ucu tetikleyecek ve bu seviyeden tetikleme geldiğinde bir etikete yönlendirip lcd ekrana yazmasını istedğim değeri yazdıracağım bu etiket içinde yine girişleri kontroıl ederek hangi seviyeden tetikleme geldiyse o etikete yönelip yazı yazdıracağım.

lcd ekranla ilgili  şunu sormak istiyorum. bu 10 tane probun 5 tanesini birden sıvı seviyesi geçince bu 5 proptan tetikleme gelecek. pic bunun hangisine göre işlem yapar sizce?

yani örnek olarak bir kod vereyim

if porta.1=1 then a1
if porta.2=1 then a2
if porta.3=1 then a3
if porta.4=1 then a4


bu şekilde kullanırsam ve a1 a2 a3 a4 dediğim etiketlerde lcd ye yazı yazdırma komutu verirsem . bu propların hepsine birde sıvı temas ettiğinden hangisini algılayacaktır.

bence en son yazılan porta4 deki tetiklemeyi işleyecektir.

bunu daha sağlıklı bir şekilde nasıl yapabilirm?



birde elimi algılaması için nasıl bir sensör kullanmalıyım elimde pir sensör var fakat bunun açısı çok geniş her hareketi algılayıp çıkış verir diye düşünüyorum pek sağlıklı olmayacaktır
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: SysTick - 02 Mayıs 2016, 21:09:21
input ların logic durumunu ayrı ayrı döngülerde kontrol etmektense doğrudan port okuyarak , portun değerine göre işlem yapman bence daha verimli olur, yani varsayalım ki 5 probunuda Pa0 ila P04 arasına bağladın eğer kabın su ile dolarsa Port değerin = 0b00001111 olucak yani dec 15, diğer seneryolarıda aynı şekilde kontrol edebilirsin.
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: Andromeda - 02 Mayıs 2016, 21:09:58
Karşılaştırma işlemi Asm de birkaç mikro saniye sürer..sonuçlar alındıktan sonra bu sonuçlara göre ikinci bir
sorgulama ile ekrana her probun sonucu yazılabilir..
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: yolcu27 - 03 Mayıs 2016, 14:58:03
Alıntı yapılan: SysTick - 02 Mayıs 2016, 21:09:21
input ların logic durumunu ayrı ayrı döngülerde kontrol etmektense doğrudan port okuyarak , portun değerine göre işlem yapman bence daha verimli olur, yani varsayalım ki 5 probunuda Pa0 ila P04 arasına bağladın eğer kabın su ile dolarsa Port değerin = 0b00001111 olucak yani dec 15, diğer seneryolarıda aynı şekilde kontrol edebilirsin.

Ozaman sırası ile if portb=%00001111 then a1
İf portb=%00011111 then a2 


Bu şekilde mi kullanmam lazım yoksa illa desimal A çevirip mi kullanmam gerekiyor. Birde nasıl bir sensor kullanmalıyım sizce ir alici verici pir sensor lazer vb.

                       
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: mg1980 - 03 Mayıs 2016, 15:35:18
Bu iş için özel sensörler vardır mutlaka, ben bunları bilmiyorum.Ama sizin yapacağınız çalışma için bir önerim var.Tankın dibinden şeffaf bir hortum çıkarın yukarı doğru.İçine üzerinde mıknatıs olan bir şamandıra gibi bir şey bırakın.Hortumun dışından kaç noktada seviye almak istiyorsanız oralara reed role tespit edin. Bundan sonrasını da yazılımla halledersiniz. Bir de şöyle yapabilirsiniz : Tankın üstünden içine sabit bir mil indirin .Şamandırayı bu milin üzerine takın. Şamandıraya bağlı  ince bir mili dışarı sıvıya temas etmeden çıkarın. Bu çubuğun ucunu bir rezistans teline temas ettirerek direnç ölçün. ADC kanalından direnç okuyarak sonuç alabilirsiniz diye düşünüyorum.
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: SysTick - 03 Mayıs 2016, 19:22:20
İlla desimale çevirmene gerek yok istediğin gibi kullanabilirsin, sensör konusunda ise tamamen bu projeyi niye yaptığınla alakalı eğer ödev ise bence sensöre gerek yok en başta anlattığın sistemin daha önce çalıştığını gördüm, @mg1980 gayet kullanışlı seçenekler söylemiş bunları da kullanabilirsin.
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: ipek - 03 Mayıs 2016, 20:38:13
izafi olarak suya daldırdığınız metal proplara Doğru akım uyguladığınızda,uzun bir müddet sonra bir taraf erime eğilimi gösterecektir..biraz daha olgun devrelerde suya 1khz sinyal uygulanıp diğer proplardan dedekt ediliyor,benim önerim ise dibe kadar inen silikon boru olsun,üst kısmına bir basınç sensoru yerleştir, Case Select komutları ile çalışma bölgeni set et...ticari projelerde kitleye temas arzu edilmez Omron ultrasonik transducer kullanılıyor..
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: yolcu27 - 04 Mayıs 2016, 10:24:43
Devre öğrenci odevi ticari bir devre değil normal hayatta kullanılacak bir devre değil aslında otomatik sıvı sabunluk modeli olacak.

Aklıma sensor için mesafe ölçer geldi. Mesela mesafe 10cm nnin altına inince çıkış verecek bir röle olacak.  Elimiz sensore yakın olduğu zaman çalışmış olacak diye dusundum.

Seviye kontrolünü de en rahat sanirim port okuyarak yapabilirim..

Dediğiniz basınç sensoru ile gerekli noktalardaki basıncı set edip ona göre yazılım yazmak çok güzel bir fikir.

Reed role ve mıknatıs da güzel bir fikir ama dışarıdan mudahale olabilir bu durumda. Basınç sensoru daha çekici geliyor. Ama dediğim gibi odev olduğu için çok sorun değil.

Fikirler için teşekkürler takıldığım konuda yeniden rahatsız ederim. İyi günler
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: akkoyunlu74 - 25 Haziran 2020, 00:18:14
Ticari ürünlerde (sıvı sabunluk) eli hangi sensörle algılıyorlar?
Bu iş için bildiğiniz ekonomik ama sorunsuz çalışabilecek sensör öneriniz varmıdır?
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: mustafa_cmbz - 25 Haziran 2020, 17:30:47
Sabun bazdır direk dc akım ile tetikleme almanız biraz zor olabilir. Picin hpwm modülü ile 1khz üretip verin derim.

10 prob ta çok gereksiz olur kanımca bunun yerine kapasitif sensör kullanmanı tavsiye ederim
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: ozgurelkt - 25 Haziran 2020, 18:34:31
ticari ürünlerde ben genelde gördüğüm IR  ALICI VE VERİCİ LEd kullanılıyor . LM393  gibi bir opamp ile karşılatırma  yapılıyor. çok basit bir devresi var. Fakat direk güneş gören yada aşırı ışık  alan bir yerde çalışmaz.
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: erkan614 - 25 Haziran 2020, 19:27:02
en hakiki ticari ürünlerde sıvya temas etmeden seviye ne ile ölçülür?
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: mustafa_cmbz - 25 Haziran 2020, 19:54:53
Alıntı yapılan: akkoyunlu74 - 25 Haziran 2020, 00:18:14Ticari ürünlerde (sıvı sabunluk) eli hangi sensörle algılıyorlar?
Bu iş için bildiğiniz ekonomik ama sorunsuz çalışabilecek sensör öneriniz varmıdır?

CNY70 Tarzı sensörler iş görebilir kanımca
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: yas - 25 Haziran 2020, 20:00:06
Alıntı yapılan: erkan614 - 25 Haziran 2020, 19:27:02en hakiki ticari ürünlerde sıvya temas etmeden seviye ne ile ölçülür?
Çalışacağı yere göre radar yada ultrasonik yöntemle ölçülür.
not: sabunluk seviyesi için ikisi de uygun değildir diye düşünüyorum. Hem çok küçük ve kapalı bir hazne hemde pahallı bir seçenek olur.
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: Sozuak - 25 Haziran 2020, 21:03:18
Lazer yzicilarda kartusun dar bir yerinde karsilikli iki pencere olur yada atik toner kutulari olan buyuk yazicilarda. Oradan isik sizarsa toner bitmis yada isik algilanmazsa atik kutusu dolmus denir.
Sabunlukta da benzer bir yontem kullanilabilir ama hazne tasarimi ona gore olmali.
Baska bir yontemde de tabanda yalitilmis rezistif pad. Direnc artarsa sabun azalmis demektir.
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: akkoyunlu74 - 26 Haziran 2020, 01:01:57
Cevaplar için sağolun, sorumu biraz daha basitleştireyim; sıvı sabun kutusunun altına elinizi uzattınız, sistem elinizi farketti ve sıvı sabunu gönderdi.
Burada bazen 1 cm'den bazen 3 cm'den el algılanıyor.
CNY70 için 3cm fazla bir değer.
Ultrasonic mesafe sensörü hacimsel olarak sıkıntılı ayrıca uzun süre sağlıklı çalışmayabilir, ir sensörler, güneş ışığı altında sıkıntılı. Hepsi için çözümler üretilebilir ama zorlama çözümler olur.
Tecrübesi olan yada incelemiş olan arkadaşlar; ekonomik ve kararlı çalışması için ne öneririsiniz?
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: ipek - 26 Haziran 2020, 01:14:41
http://www.inventable.eu/2012/11/11/sensor-ir-de-proximidad/

Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: Sozuak - 26 Haziran 2020, 01:55:44
Moduleli IR ile kazanci ayarlanabilen fotodiyotla isi cozersiniz. Elbette ir yansimasi her elde ayni olmaz. Sensoru daha dogrusu ir led ve fotodiyodu birbirine farkli acilarda yerlestirip hassasiyetine bakabilirsiniz. Hassas olsun derseniz verici diyodun akimini yuksek tutarsiniz, yada dar aciyla yollarsiniz yada alici diyoda da mercek koyar genis acidan alis saglarsiniz. Led mercekleri var hatta pir sensor merceklerinden de var o da yansiyan sinyali kolay yakalamayi saglar. Seviye degil yaklasim sensoru olduktan sonra is bence daha kolay.
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: ozgurelkt - 27 Haziran 2020, 21:01:13
https://www.alibaba.com/product-detail/icstation-IR-Infrared-Obstacle-Avoidance-Sensor_1600055431540.html?spm=a2700.7735675.normalList.26.4c2629b4KRdOct&s=p (https://www.alibaba.com/product-detail/icstation-IR-Infrared-Obstacle-Avoidance-Sensor_1600055431540.html?spm=a2700.7735675.normalList.26.4c2629b4KRdOct&s=p)

sıvı sabunluklar musluklar bu mantıkla çalışıyor. çok basit devreleri var. elini altına sokacağın için güneş ışığı ortam ışığından etkilenmez. mesafesi ayarlayabiliyorsun. ayrıca IR geçiren siyah cam kullanınca ortam ışığıyla hiç bir işin kalmıyor.

Bu ürünü kullanarak dezenfektan standı yaptık. çalışmasında herhangi bir sorun olmadı.  Kullanıcı elini altına soktuğunda ayarladığın süre kadar dezenfektan akıtacak sekilde ayrıca devre yapman gerekiyor. yoksa sensör gördüğü sürece  dezenfektan  akıtmaya devam eder. bunun için ben 555 entegresi kullandım. sensör elimi gördüğünde düşen kenar oluşuyor. her düşün kenarda 555 ile ayarladığım süre kadar motor çalışıp dezenfektan sıkıyor.
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: sarikayamusa - 28 Haziran 2020, 20:19:10
Alıntı yapılan: Sozuak - 25 Haziran 2020, 21:03:18Lazer yzicilarda kartusun dar bir yerinde karsilikli iki pencere olur yada atik toner kutulari olan buyuk yazicilarda. Oradan isik sizarsa toner bitmis yada isik algilanmazsa atik kutusu dolmus denir.
Sabunlukta da benzer bir yontem kullanilabilir ama hazne tasarimi ona gore olmali.
Baska bir yontemde de tabanda yalitilmis rezistif pad. Direnc artarsa sabun azalmis demektir.
Hocam şuan bir kap içersinde suyun bitip bitmediğini kontrol etmeye çalışıyorum, fakat sensör koyacak yerim çok dar. Çeşitli yöntemleri araştırdım, tam bu noktada sizin bahsettiğiniz bu rezistif pad nasıl birşey ilgimi çekti, biraz açabilir misin? ADC converterle mi yapılır? Su dolu olunca resistif padde direnç değişimi mi oluyor? Bu rezistif pad nasıl birşey açıklayabilir misin?
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: Sozuak - 28 Haziran 2020, 21:24:24
Selamlar bu  (https://www.direnc.net/basinc-kuvvet-egim-sensorleri)sayfadaki   bu (https://www.direnc.net/basinca-duyarli-iletken-levha-adafruit) ve bunun (https://www.direnc.net/rp-c76-st-ince-film-basinc-sensoru)  gibi sensörleri kabın altına koyup direnç değişiminden analog voltaj okuması yapıp sonuç çıkartabilirsiniz. Tabi sıvının ağırlığı vs ne kadar ve ne oranda ayarlanabilir bilmiyorum , çeşitli modelleri var ve /veya ağırlığın temas edeceği noktadan gereken kuvvet pad üzerine aktarılıp ölçüm yaklaşık olarak yaptırılabilir.

Haliyle ped direnci üzerine uygulanan basınçla değişiyor. Kabın ağırlığı da bu pad üzerine düşürüldüğünde  meydana gelecek direnç değişiminden sonuç çıkartılabilir. Tabi burada padin üzerine uygulanacak basınç  aralığı kabın ağırlığı yada belli noktasındaki (pad üzerine basacak kısım) ağırlık aralığı denk gelmeli. Örneğin kabınıza dolan sıvı yarı seviyede iken pad direnci uygulanan basınç nedeni ile düşebileceği min değere düşmüş olabilir yada ters şekilde kabın doluluğu yarı iken hala direnç değeri anlamlı bir değişim göstermeyebilir.
Bunu uygun boyutta pad ve pad temas noktalarının  kabın bir kısmına yada tüm ağırlığına denk gelecek bir mekanik tasarımı yapılması gerekebilir.
Örneğin pad 0-100gr arası min/maks çalışırda siz 0-200gr ağırlık yüklerseniz haliyle belli yere kadar ölçüm alırsınız.
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: akkoyunlu74 - 13 Ekim 2020, 10:33:24
DEFINE OSC 4

 
#config
 __config _FCMEN_OFF & _IESO_OFF & _CP_OFF & _CPD_OFF & _BOD_OFF & _MCLRE_OFF & _WDT_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT
#ENDCONFIG

CMCON0 = 7
ADCON0=%00000000
ANSEL=0 ;ADC ler iptal

GPIO=0
TRISIO= %00101010          ; ************* gpio-5 input yapıldı senkron için 06.8.2015 ********************

                   
DUTY VAR WORD
don    var    byte


' ============= PWM Ayarları =========
T2CON =%00000101 'Bölücü 1/4 olarak verildi ve TMR2 aktif hale getirildi.
PR2=13      ; 36Khz için geçerlidir. 38Khz için 12 verilmesi yeterlidir.
duty=28     ; 36Khz için geçerlidir. 38Khz için 26  verilmesi gerekir.
 CCP1CON.4=DUTY.0
CCP1CON.5=DUTY.1
CCPR1L=duty>>2
CCP1CON.2=1 'bu iki komut ile PWM sinyali açılmış olacaktır
CCP1CON.3=1

 
BASLA:
don=don+1
if don>1 then
    don=0
    CCP1CON.2=1 'bu iki komut ile PWM sinyali açılmış olacaktır
    CCP1CON.3=1
  else
      CCP1CON.2=0 'bu iki komut ile PWM sinyali kapanmış olacaktır
        CCP1CON.3=0
    endif
    pause 10       
 if gpio.5=0 then    ; Giriş portunu kontrol et.
  gpio.0=1
  pause 750           
 else
  gpio.0=0           
 endif

goto basla


end
(https://i.ibb.co/Pm21Swf/1602576633143.jpg) (https://ibb.co/Pm21Swf)
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: akkoyunlu74 - 13 Ekim 2020, 11:30:49
https://www.mikrobotik.com/wp2/2019/04/09/ir_sensor_kullan/
orijinal kaynağını yukarıda verdiğim devreyi kurdum.
Devre kendi sinyalini görmüyor fakat tv kumandasıyla aktif oluyordu.
Sorunu sadece DP1838 besleme uçlarına 100nF kondansatör bağlayarak çalıştırdım. Ancak kullandığım besleme bilgisayar güç kaynağı yada lipo pil olduğu için bu durum aklıma yatmadı. Dijital osiloskop ile ir diyot ucundan frekans ölçümü yaptığımda okuduğum değerler;
PR2=13      ; 36Khz için geçerlidir. 38Khz için 12 verilmesi yeterlidir.
duty=28     ; 36Khz için geçerlidir. 38Khz için 26  verilmesi gerekir.

burada yazılanların tamı tamına yarısı çıktı. Yani 38khz için 19 khz, 36 khz için 18 khz.
Bu durumda forumlardan bulduğum picmulticalc hesaplama aracıyla baktım aynı sonuç.
ancak denemeler yoluyla PR2=6   
                       duty=26 değerlerini verdiğimde osiloskopta 38khz ye yakın değerler elde ettim.
Devre hala çok kararlı değil, 100 kere doğru çıkış üretse hala durduk yere çıkış ürettiği oluyor. Bu sıkıntının sebebi ne olabilir?
Not: Kullandığım alıcı göz plastik kılıflı; bu önemli bir sebep olabilirmi?

İpek Hocam verdiğiniz devre harika çalışıyor, üstelik güneşten yada harici güçlü ışık kaynaklarından zerre etkilenmiyor ancak asm bilmediğim için üzerinde ufak değişiklikler yapamadım onun için kullanmadım. Bu mesajı okuyan arkadaşlara fikir vermesi için yazdım bunu.
Başlık: Ynt: sıvı seviye kontrol ve lcd
Gönderen: erdcan - 13 Ekim 2020, 20:06:09
Merhaba, mz80 kullanabilirsiniz. Gayet hassas ve hızlı bir sensör. 3-80 cm arasında kullanabileceğiniz, oldukça stabil bir algılamaya sahip sensördür. Arkasındaki trimpot ile mesafe ayarlanabilr.