Probleme farklı farklı çözüm yöntemlerinin önerilmesi hoş olmuş.
@Dede beyin önerdiği donanımsal yöntem ile yukarıdaki mesajımda CCS kod örneği ile paylaştığım yöntem biri hardware diğeri software olarak aynı işi (sadece yükselen kenar takibinde) yapıyor.
Çok özel bir nedeni yoksa, benim...
Kodlarınızda master için 8Mhz, slave için 16Mhz ayarlarını kullandınız. Bunu bilerek kullandıysanız bu mesajı göz ardı edebilirsiniz. Gözünüzden kaçan bir durum ise bu durumu (modül üstündeki xtall değeri ile koddaki aynı olmalı) dikkate alın.
if (CAN0.begin(MCP_ANY, CAN_500KBPS, MCP_8MHZ) ==...
Entegre üzerindeki komformal kaplamayı şu malzemeleri kullanıp kaldırabilirsiniz.
Sıcak hava, biraz tiner, ince uçlu cımbız, maket bıcağı ucu.
Komformal kaplamayı biraz ısıtın. ( pcbin diğer tarafında ledler olduğu için ısıtma işleminde aşırı ısılardan kaçının.) Cımbız veya maket bıçağı ucu...
Çok önceden bilgisayar oyunu oynamayı sevdiğim dönemlerde meraktan ucuz yollu bir direksiyon seti almıştım. Reaksiyon gecikmesi nedeniyle oyundaki aracı yolda tutmakta çok zorlandım. Bir iki denemeden sonra bir köşeye atılmıştı.
Teslada durum böyleyse olay çok vahim :)
Yukarıdaki mesajımda anlatmak istediğim yapı. C (CCS) ile oluşturulmuş örnek. Belki size yol göstermede yardımcı olur.
Zaman ölçümü için Timer2 10ms lik kesme üretecek şekilde kullanıldı.
#include <12F683.h>
#device ADC=10
#fuses NOMCLR //Master Clear pin used for I/O
#use...
Hali hazırda zaten mcu kullandığınız için dönme algılama işlemini mcuya yaptırmak mantıklı ve aslında çok basit.
Geliştirme ortamı olarak Pic Basic kullandığınız için kod yardımında bulunamıyorum.
Problem çözümünün bir parçası olan "Timer Kesmesi" işleminin basicde nasıl yapıldığına bakmakla...
Dönen cisim duruyormu sorusunun cevabını sadece yükselen kenar algılama ile tespit edemezsiniz. İki pals arasındaki süreyi bir şekilde işin içine katmak gerekiyor.
Şöyle bir yaklaşım ile bir algoritma kurulabilir.
Hareketin durduğuna karar vereceğiniz max süre belirlenir. Örneğin 3000ms boyunca yükselen veya düşen kenar bu süre kadar yoksa durdu kabul edilir.
Bir adet timer kurulur. Kesme peryodu 10ms gibi bir değere ayarlanır. (Diğer işlemler için mcu...
Çıktı alırken yazıcı ayarlarından ölçeklendirme ayarını iptal edin veya %100 değerine getirin.
Emin olmak içinde test çıktısı alın, bacak aralığı bilinen malzemelerin padleri arasındaki mesafeleri ölçün.
Lamba, süperbox çok az akım çeken yükler. Bunlar SSR için hiçbirşey.
Bu şartlarda SSR sorunsuz büyük ihtimal yıllarca çalışır.
Ama yukarıdaki mesajlarımda vurguladığım emniyet güvenlik (kendinizin ve başkalarının) ikazlarını dikkate alın.
Kararda sorumlulukta size ait.