Bluebishi PLC tanıtım

 



Youtube'da Bluebishi'ye firmware yüklemeyi anlattım..


Hazırladığım tablodan da göreceğiniz gibi STM32 PLC > PICO PLC olduğu sonucu ortaya çıkıyor...




Blue Pill PLC (STM32) veya Bluebishi, bulduğum firmware ile 8 giriş ve 12 çıkışlı bir PLC olan Mitsubishi PLC (FX2N) ye dönüşüyor. Süper plc’ye dönüşüyor dediysem, orjinalinin aynısı olmuyor tabii ki. Ama Siemens S7-1200 plc'den daha hızlı çalıştığını söyleyebilirim. Giriş ve çıkışlarını nasıl 24V'a adapte edeceğimizi daha sonra anlatacağım diye önceden demiştim sanırım.



Girişler (X0-X7) dahili olarak GND'a pull-down direnç ile bağlanmış. O yüzden Pico'da olduğu gibi harici pull-down dirence gerek kalmıyor. 

1-wire protokolünü de destekliyor. Bu sayede örneğin bir sürü birbirine bağlanmış DS18B20 sıcaklık sensörü (transistöre benzer 3 bacaklı şey) ile haberleşebilir. 

Ayrıca step motor da sürebiliyor. 

Ve ayrıca.. En güzeli de modbus rtu protokolünü (RS232 veya RS485) destekliyor. Bu demek oluyor ki bir HMI, bir PLC veya başka bir Bluebishi ile haberleşebilir.


Karta firmware’in yüklenmesi


Firmware yükleme şeması

 

Firmware yüklerken STM32’ye usb kablosu takılmayacak. Karta, usb-ttl çevirici üzerinden enerji vereceğiz. Enerji vermeden önce BOOT0 jumper'ı (üstteki jumper) resimdeki gibi 1 konumunda olmalıdır. Bağlayacağınız usb-ttl çeviricinin jumper'lı olması ve jumper konumunun 3.3V olması önemlidir. Firmware bir kere yüklendikten sonra, GX Developer programını, kartın mikro usb soketine kablo bağlayarak kullanabilirsiniz. Kullandığınız kablo, data kablosu olmalıdır. Firmware karta yüklendikten sonra, enerji kesilmeden önce BOOT0 jumper'ı 0 konumuna alınmalıdır. Aksi halde firmware, enerji kesilince silinir. Firmware yüklendikten sonra, enerjiyi kesin ve usb-ttl çeviriciyi devreden çıkarın. Bluebishi'yi usb kablosuyla bilgisayara bağlayın. Üzerindeki yeşil led yanacaktır. Önce tanımayacak, ama 5-6 saniye sonra Windows, kartı seri port olarak algılayacaktır. Aygıt yöneticisinden görebilirsiniz. 


Yeni plc'miz vatana millete hayırlı olsun. Buradaki amacımız, bu cihazın, plc eğitimi için herkes tarafından kolaylıkla ulaşılabilir olması ve kullanılabilmesidir. Aynı zamanda amaç, plc öğrenirken, simülatör (yazılım) ile değil, gerçek bir plc ile çalışabilmeyi sağlayarak bu konuda Endüstri 4.0 okur yazarlığına fayda sağlamaktır. Nasıl cümle bu kadar uzadı anlamadım. Dileğim odur ki Endüstri 4.0 lafta kalmasın, bilenler bilmeyenlere plc programlamayı anlatsın... 

PLC içine ladder programı yüklemek için GX Developer yazılımını kullanıyorum. Windows 10’a direk kurulabiliyor yanlış hatırlamıyorsam. Windows 11’e kurmak için “Windows 11'de GX Developer kurulumu” isimli yazıma bakınız. Bu yazıda bulunan V8.3 Developer, her iki Windows’a da kurulabiliyor. Önce bunu bilgisayara kurduktan sonra üzerine V8.72 Developer kurulabiliyor. GX Works programı da kullanılabilir ama çok büyük olduğundan ben tercih etmedim. Developer’ı kurarken önce EnvMEL isimli klasörde bulunan exe’yi kuruyoruz, unutmayalım. Karmaşık programlar yazmadan önce bu işin “Merhaba Dünya” sı olan tek satırdan oluşan şu programı denemelisiniz :

|X0|————————(Y0)

X0 girişine bağlı buton, basılı olduğu sürece Y0 çıkışı enerjilenir.

Firmware

Giriş-Çıkış pinleri

Flash loader


Bu firmware’i yazan kim ?

Bu konudan youtube’da kısaca bahsettim ama burada da etraflıca mevzuyu anlatmak istedim. Bu gerçek hikayenin başrollerinde bir rus, bir italyan, bir de türk var. Firmware linkinde github hesabı olan arkadaş, italyan bir youtuber. Kendisine youtube kanalından, bu firmware’i kimin yazdığını, nereden bulduğunu filan sordum. Kendisi, yazanı bilmediğini, kendisine gökten zembille indiğini filan söyledi. Yani öyle demedi ama o anlama gelen şeyler söyledi, bilmiyormuş, görmemiş, duymamış. Bana pek inandırıcı gelmedi haliyle. Firmware için kendi github linkini video’nun açıklamasına yazmıştı. Benim videosuna yaptığım yorumdan sonra, video açıklamasından github linkini kaldırmış, web sitesinin linkini koymuştu. Neden sordum diye merak edenler olabilir. Modbus protokolünün nasıl ayarlandığını öğrenmek amacıyla sormuştum. Neyse modbus poll programıyla firmware attığımız porttan, usb-ttl çevirici ile slave sorguları yolladım. Baud değerini 57.600 yapınca, bağlantı kuruldu ve plc’den cevaplar gelmeye başladı. Bu bana bir referans oldu ve internette bu baud değeri ile arama yapınca karşıma Ruslar çıktı. Rus arkadaşlar bu firmware ile seracılık için sulamayla, sıcaklıkla ilgili çalışmalar yapmışlar. Ve bu firmware’in kısıtlı sürümünü yani demo sürümünü github’da yayınlamışlar. Bu firmware’in bir süre küçük rakamlarla satışını da yapmışlar. Ama günümüzde bu firmware’e pek ilgi kalmamış, yani satışları durmuş. Bende bu nedenle firmware’i tam sürüm olarak paylaşmasını rica ettim ki herkes faydalansın. Kendisi bunu yapmayı istemedi. Kaynak kodlarını veremeyeceğini, kodların, günümüzde geliştirdikleri yeni sistem plc’nin alt yapısını oluşturduğunu söyledi. Ben de kaynak kodları değil sadece firmware’i yani bin dosyasını istediğimi belirttim. 

Peki zamanında satılan bu firmware, nasıl oldu da tam sürüm olarak (kısıtlamasız) bu italyan arkadaşın eline geçti anlam veremedim. Rus arkadaşla tekrar iletişim kurdum. Bu soruyu ona da sordum bir cevap vermedi. Ayrıca firmware’in tam sürümüyle ilgili blog sayfamda yazı yayınlamak için kendisinden izin istedim. Ama maillerime cevap vermedi. Ben de bu sebeble, tam sürüm firmware’i yayınlamaya karar verdim. Yayınlama kelimesi yanlış oldu, italyan yayınlamıştı zaten. Ben sadece bunun ruslara ait olduğunu keşfetmiş oldum. Bu arada italyan arkadaşın youtube sayfasına bir yorum daha yaptım. “Senin sahibini bilmediğin firmware'in sahibini buldum” diye yazmıştım. Yorumumu silmiş hemen.

Rus yazılımcının, usb portundan çalışan Mitsubishi plc programlama protokolünü çözmesi, oturup C dilinde, Mitsubishi plc’nin komutlarını çalıştıran bir plc firmware’i yazması gerçekten hayranlık uyandırıcı bir durum bence. Helal olsun demekten başka birşey aklıma gelmiyor. Tebrikler ve teşekkürler Mikhail…



Önemli not : Firmware (stm32f1_plc.bin) yüklerken, dosyayı seçmeden önce Medium density 128K seçeneğini seçmeniz gerekiyor.. Bir de baud ayarını 115200 yapıyoruz, başka bir ayara dokunmanıza gerek yok.




Yorumlar

Bu blogdaki popüler yayınlar

VBA - Mscomm (seri port) ile veri loglama

Picobishi PLC tanıtım