kuluçka makinası yardım

Başlatan Mucit23, 08 Haziran 2010, 22:07:02

yorulmaz06

Sevgili hocalarım
Çok çok az program bilgimle kodları incelerken ETE hocamın derslerinde rutubet hesap kısmının
RUTHESAP: 
           ISI=ISI1*10+ISI2
           p1=(26542-(54722**ham+ham))**ham-40     
           P2=655+(HAM*5)+(HAM**15917)	      
           P3=(P2**(ISI*10+2480))-(P2**2730)+P1   ' kompanse edilmiş değer
           U1=p3/10:U2=p3//10
           IF ham>3710 THEN
              u1=0:U2=0
              GOTO SENSORYOK
           ENDIF  
           return
olduğunu gördüm
kuluçka makinasının programında ise
RUTHESAP: 
              'ISI=ISI1*10+ISI2
              p1=(26542-(54722**ham+ham))**ham-25     
              P2=655+(HAM*5)+(HAM**15917)	      
              P3=(P2**(ISI*10+2480))-(P2**2730)+P1   
              U1=p3/10:U2=p3//10
           IF ham>3710 THEN
              U1=0:U2=0
        ENDIF  
return
böyle
yani birinde
p1=(26542-(54722**ham+ham))**ham-25

diğerinde
   p1=(26542-(54722**ham+ham))**ham-40

benim nemi çok yüksek görmem bununla alakalı olabilirmi?

Alfa

Bende ankaradayım ama bende %68 gösteriyor sensor olarak ne kullandın?

yorulmaz06


Alfa

ben sht11 kullandım biraz pahalı ama iyi iş görüyor.datasheet ine bakmak lazım ikisi farklı oalbilir

ete

#64
SHT11 ile SHT71 arasında yalnızca kılıf farkı var. Belki braz hassasiyet farkıda vardır ama her ikisinide kullandım. Ölçüm değerlerinde bir farklılık görmedim.
Hatta aynı ande iki sensörüde bir birinin aynısı iki devrede aynı anda kullandım. Her ikiside aynı değeri gösterdi.
Bu nedenle bu gibi şeylere kafanızı takmayın.

BU sensörü ilk kullandığımda internette bile henüz örnek ne devre nede hesaplama şekli ile ilgili bir bilgi var idi.
Oturdum excelde tamamen integer hesaplama yöntemi ile bir hesaplama şekli oluşturdum. Araya 32 bit hesaplama mantığınıda ilave ederek sonuca ulaştım. Ancak sonradan İnternette daha kısa yazılan ama üretilen kod açısından farkı olmayan örnekler çıktı.
Bunlarla benim hesaplama yöntemimide karşılaştırdım. Sonuç yine aynı idi.
Sonuç olarak verdiğim formüller doğrudur. Bazıları isis simulasyonunda çıkan farklı değerler nedeni ile benim kodları değiştirip kendilerine göre uyduruyorlar. Bu yanlış. İsteyen istediğini yapabilir tabiiki ama kodlarla oynamak yalnızca sonucun yanlış çıkmasını sağlar bunuda belirtmek isterim.

Bakın ilk kullandığım hesaplama şekli aşağıdadır.

ISIHESAP:  T1=(-4000+HAM)/100
           T2=((-4000+HAM)//100)/10
           RETURN
'-------------------------RUTUBET HESAP ALT PROGRAMI----------------------------
RUTHESAP:  P1=28*HAM
           P2=div32 100
           P1=P2*HAM
           P2=div32 1000
           P1=405*HAM
           P3=div32 100
           C=(P3-P2-400)
           B=(1000+(8*HAM))/10
           ISI=T1*10+T2
           If ISI>250 then
             P1=((ISI-250)*B)
             P2=div32 1000
             RUT=C+P2
           else
             P1=((250-ISI)*B)
             P2=div32 1000
             RUT=C-P2
           endif
           U1=RUT/100:U2=(RUT//100)/10
           RETURN
Bütün değişkenler word tipindedir.

Ete
Bilgi hazinedir paylaştıkça büyür.            http://etepic.com

Alfa

İyi hoş konuşmussunda ete abi şimdi benim aklıma kurt düştü bu son verilen hex te senin orjinal formulünmü var değiştirilmiş mi,eger degiştirildiyse senin izninle bizde ona göre düzenleme yapalım...senin kullandıgın formul nedir acaba?

ete

Yukarıda verilmiş benim kullandığım. Derslerde de açıklamış idim zaten.
Ete
Bilgi hazinedir paylaştıkça büyür.            http://etepic.com

yorulmaz06

bilgiler için teşekkürler ETE hocam
p1=(26542-(54722**ham+ham))**ham-25  bu satırı sizin örneklerinizde olduğu gibi ham-40 olarak değiştirip deniyeceğim

Alfa

peki ete abi bu derecenin set ayarında ben dereceyi ondalıklı olarak ayarlamak istiyorum onun için ne gibi bir yol izlemeliyim programda?

ete

Bu iş için tek bir sistem var. Elde edilen sonuç 10 katı olarak hesaplanmalıdır.
Örnek vermek gerekir ise 35 derece için 350 bulunmalı bunu 10 ile mod alma işlemi yaparsanız size ondalık kısmını verecektir.
350/10 size tam sayı kısmını 350//10 ise size ondalıklı kısmı verecektir.
Programda bulunan değerlerin 10 ile çarpılmış halini hesapla ve sonucu 10 ile mod alma işlemine sok olsun bitsin.

Ete
Bilgi hazinedir paylaştıkça büyür.            http://etepic.com

Alfa

teşekkürederim ete abi.valla sen olmasan bizim gibi bu işe yeni başlayanlar ne yapacaktı ALLAH razı olsun.

picker

#71
Konuyu okudum da... 14 yıl önce sadece rölelerle kurduğum mantık kapılarıyla bir kuluçka makinası yapmıştım.

Bir mantık hatasına değinmek istiyorum. Demişsiniz ki 4 saatte bir motorun dönmesi için saatleri giriyoruz sisteme.

Buna ne gerek var?

Ben bıldırcın için yapmıştım, saatte bir 45 derece sağa, 45 derece sola döndürmek gerekiyordu. Ve dönüş saatlerini girmeye filan da gerek yoktu. Sizin için de gerek yok.

Bence tmr0 ile 1/128 prescaler kullanın. Bu prescaler ayarında tmr0 1 taşması 4MHz kristal ile 32,768 milisaniyede gerçekleşir.
Her taşmada sayac değişkenini 1 arttırın. Sayac değişkeni 30 olduğunda 1 saniye (çok yaklaşık olarak) geçmiş olacaktır.
sayac değişkenini bu noktada sıfırlayın.
saniye diye bir değişkeni sayacın her 30 olmasında 1 arttırın. saniye 60 olunca da dakika değişkeni için aynı işlemi yapın.
4 saat 240 dakika yapar. dakika değişkeninin her 240 olması halinde motoru çalıştırın.

Sağ ve sol limitler için limit switc koyun. Motor çalıştığında mesela sağ limit swice basılı olacaktır. O zaman sola basana kadar çalışmaya devam ettirin. Bu arada sayacı da durdurun.

Yani motorun çalışma saatlerini programlanabilir yapmakla uğraşmayın. Hiç bir kuluçka makinası bunu yapmaz. Eğer bunu siparişle yapıyorsanız, alıcınız ya işten anlamıyor, ya da işi yokuşa sürüyor.

Çok çok programlanabilir olan motorun kaç saatte bir döneceği olabilir. Saat kaçlarda döneceği değil...

Bu özelliği siz ekliyorsanız, hiç kimse saat kaçlarda tepsiyi bükeceği programlanabiliyor diye bir kuluçka makinasını almaz.

Kuluçka makinası, konulan 100 döllü yumurtanın kaçının yumurtadan çıktığı, yumurtadan çıkanların kaçının sağa sola düşmeden sağ kalabildiği gibi performanslarla alınır.

100 döllü yumurtadan daha fazla verim elde etmek için de içerideki ısı ve nem ölçümü ve dağılımının çok iyi olması gerekir. Bunun için 2 veya 3'er sensör ile kontrol yapmaya enerji harcamanız çok daha verimli bir cihaz yapmanızı sağlayacaktır.

Selam ve saygılar



Mucit23

Arkadaşlar kusura bakmayın bu aralar çok fazla projeyle uğraştığım için konuyla fazla ilgilenemedim.
Hayırlısıyla benim ilk civcivler çıktı hepsi çok sağlıklılar aslında bi iki tane fire verdi onun sebebinide buldum ben hata yapmıştım ısı sensörünü makinanın üst taraflarına koymuştum bu yüzden ortam sıcaklığı biraz yüksek görünüyor sensör 38 derece gösterirken yumurtalıkların seviyesindeki sıcaklık 36,5 - 37 derece civarındaydı bence enbüyük sorun buydu gerçi şimdi projemi dahada geliştiriyorum şimdiki projemde iki adet ısı sensörü kullanıyorum bitanesi altta diğeri yani sht 11 üstte olacak set değeri bu iki sensörün ortalama sıcaklığı alınarak çıkan değerle karşılaştırılacak ve iki sensör arasındaki ısı farkı 2 dereceden büyük olunca makinanın yanlarındaki ısı dengeleyici fanlar çalışacak ısı dengelenince yandaki fanlar kapanacak ayrıca devreyle ilgili tüm bilgileri aynı anda görmek için 20x4 lcd ekran kullandım programını bitirdim sayılır 16F877 ağzına kadar doldu neredeyse kristal frekansınıda 20 mhz ye çıkarmayı düşünüyorum Ayrıca ekranda tarih gün gibi bilgilerde görülecek şimdilik düşüncelerim bunlar
Alıntı Yappıcker
AYrıca yanlış hatırlamıyorsam son verdiğim programda ısı ayarlama sistemi senin dediğin gibi yapmıştım sen sadece 1 ile 4 arasında kaç saatte bir girileceğini seçiyorsun okadar gerisini program hallediyor

yorulmaz06

Sayın mucit23 hocam
emek verip yaptıgın projeyi bizlerle paylaştığın için teşekkür ederim. devreyi kurdum çalıştırdım ama nemden verim alamıyorum sürekli çok yüksek gösteriyo. yakınımdaki bir eczanede bulunan digital nem ölçerle karşılaştırdım 30-35 derece fazla gösteriyo makinanın içinde ise çok daha fazla. 140 150 lerde gösteriyo acaba benim sht71 arızalı olabilirmi.
bu  ikinci sht71 ilki 7805 e taktığım soğutucu bacaklarına şase yapınca ekranla birlikte mefta oldu. acaba bu şase sırasında sht ye bağladığımız direncin falan değeri değişmiş olabilirmi. yeni bitane daha sht alayım diyecem ama sht71 45 lira ankarada. sence bu sorun neden kaynaklanıyo olabilir? yardımcı olursan sevinirim.
yeni projeni sabırsızlıkla bekliyorum kolay gelsin

Mucit23

projeyi bitirip çalıştırınca paylaşacağım inşaallah sht 11 bende çok düzgün çalışıyor sen sht 71 kulanmışsın arada kılıfharicinde pek fark olduğunu düşünmüyorum ama bende sht 11 sorunsuz çalışıyor ölçümler çok doğru karşılaştırmalar yaptım arada pek fark yok sende istersen biraz karşılaştırmalar yap test et ortam nemi çok yüksek olabilir bilmiyorum bende