MedIOEx Başlangıç


Hakkında#

Bu dokuman MedIOEx VD2440111 kartının devreye alınması ve konuyla ilgili uygulama örneklerinin içerir. MedIOEx ilk devreye almadan, sahada karşılaşabileceği sorunlara kadar birçok konu örnekleriyle ele alınacaktır. MedIOEx'in çıkış felsefesine istinaden öğrencilerin/hobi tutkunlarının/mühendislerin Raspberry üzerinde öğrendiklerini endüstriyel ortamlarda kullanabilecekleri bilgilerin içeriklerini bu site üzerinde yer alan başlıklarda bulabilir.

MedIOEx kartı aşağıdaki özelliklere sahiptir:

  • 16 adet transistör digital input
  • 16 adet digital output ( 4 adet röle, 12 adet transistör çıkış)
  • 4 adet 12 bit analog input
  • 4 adet 12 bit analog output
  • Real time clock
  • Rs232
  • Rs485
pe2a_infographic

Bu özelliklere Raspberry'nin(RPI_3) standart olarak sağladığı aşağıdaki özellikler de ekleniyor:

  • 64-bit quad-core ARMV8 işlemci.
  • 1.2GHz 1GB RAM.
  • Dahili WiFi - BCM43143.
  • Bluetooth 4.1 (Bluetooth Low Energy - BLE)
  • 4 Adet USB 2.
  • 4 uçlu Stereo çıkışı ve Composite video çıkışı
pe2a_rpi3

MedIOEx ve RPI'nin endüstriyel ortamlarda kullanılabilmesi için ise MedIOEx üzerinde birçok denemeler yapıldı, sahada panoların içerisinde test edildi. MedIOEx ve Raspberry ile örnek olarak şu senaryoyu test edebilirsiniz:

  • #1 Kontak girişlerinin cloud'a aktarılması,
  • #2 Cloud'dan veri aktarımı sonucunda rölelerin çekilmesi,
  • #3 Enerji analizörü ile rs485 üzerinden veri okuma,
  • #4 Kamera görüntülerinin cloud'a aktarılması

Bu senaryo kulağa çok basit gelse de bunu bir PLC veya endüstriyel PC ile yapmak oldukça pahalı bir çözüm olmaktadır. Raspberry Pi ve MedIOEx ile maliyetleri minimize edebilir ve projenizde donanım sorunlarıyla uğraşmaya gerek kalmadan yazılım çözümünüze odaklanabilirsiniz.

Başlangıç#

MedIOEx, 24VDC harici güç kaynağı ile beslenmesi gerekmektedir. Eğer MedIOEx bir panonun içerisinde kullanılacak ise J11 konnektörüne aşağıdaki gibi bir bağlantı gerçekleştirerek veya doğrudan 24VDC çıkış veren bir bilgisiyar adaptörü ile çalıştırabilirsiniz.

J11 konnektörüne min. 1A, 24VDC güç kaynağını aşağıda şekildeki gibi bağlayabilirsiniz:

J11

MedIOEx'i güç kaynağı ile aşağıdaki gibi bağlayabilirsiniz :


Ofiste veya okuldaki çalışmalarınız için bilgisiyar adaptörünü (18V-30V) J10 konnektörüne bağlayabilirsiniz:

pe2a_j11

pe2a_j11

MedIOEx'de kullanılan SPI tabanlı entegreler ve "Chip Select" pinleri aşağıdaki tabloda paylaşılmıştır:

IO Entegre İsmi CS
Analog Input MAX11627 22
Analog Output DAC124S085 24
Digital Output MCP23S17 26

MedIOEx'de yer alan diğer entegreler ise aşağıdaki tablo belirtilmiştir:

IO Entegre İsmi     
Real Time Clock     MCP79410
Sıcaklık LM75BD
RS232 MAX232
RS485 MAX485
EEPROM* 24LC512
İzole RS485* ADM2587E

* MedIOEx kartı üzerinde tasarlanmış ama özel istek dahilinde göre kullanıcıya sunulmaktadır.

pe2a, MedIOEx kartını tamamen açık kaynak kodu ile birlikte kullanıcıya sunmaktadır. Kullanıcı isterse açık kaynak kodun üzerinde değişiklik yapabilir veya belirtilen fonksiyonlarını kullanabilir. 

Fonksiyonların ayrıntılı açıklamalarına aşağıda belirtilen GitHub linki üzerinden ulaşabilirsiniz:

https://github.com/pe2a/MedIOEx

Eğer kullanım sırasında açık kaynak kod üzerinde herhangi bir sorunla karşılaşırsanız bizlere bildirebilirsiniz: submit an issue

                Raspberry'nin üzerinden 5V vererek MedIOEx cihazını çalıştıramazsınız. Harici bir 24VDC güç kaynağı ile beslemeniz gerekmektedir!

Kullanabileceğiniz örnek güç kaynakları:

MedIOEx SPI tabanlı haberleşme entegreleriyle fiziksel giriş çıkış işlemlerini gerçekleştirir. Pe2a.h kütüphanesi tamamiyle bcm2835 kütüphanesinin kalıtımı ile oluşturulmuştur. Bundan dolayı ilk başta bcm2835.h kütüphanesinin kurulması ve sonrasında ise pe2a.h kütüphanesinin kurulması gerekmektedir. Bcm2835.h kütüphanesinin 50. versiyonu aynı zamanda MedIOEx github linkinde yükleme kolaylığı açısından bulunmaktadır. Github scriptleri Jessie sürümüyle beraber gelmektedir. Bundan dolayı github'ı aktif etmek için herhangi bir ekstra işlem yapmaya gerek yoktur. 

Ayarlamaları yapmadan önce hatırlatmada fayda var. Eğer SSH üzerinden RPI'ye bağlanıyorsanız 

olarak almalısınız eğer daha öncesinden bir şifre vermediyseniz. Raspberry'de terminal açtıktan sonra aşağıdaki komutları uygulamamız gerekiyor bcm2835.h ve pe2a.h kütüphanesi kurulumu için.

Hatırlatma:

  • raspi-config
  • SPI disabled
  • i2c Enabled
  • Serial Comm. Enabled


olması gerekmektedir. Bunları daha önceden değiştirdiyseniz bu hale raspi-config'den getirebilirsiniz.

                MedIOEx kütüphanesi, bcm2835.h kütüphanesinden kalıtım yoluyla oluşturulmuştur. Fonksiyonların düzgün çalışması için bcm2835.h kütüphanesini dikkatlice kurunuz!

                    double convertDigital_to_Analog(const int getVal){

                    return (double)((10.0  / 4095.0) * getVal); //Voltage
                    }
                

bcm2835.h Kütüphane Kurulumu#

Raspberry üzerindeki pinlerin kullanılabilmesi için bcm2835.h kütüphanesinin kurulması gerekmektedir. pmedex.h kütüphanesi de bcm2835 kütüphanesile beraber çalışmaktadır. Bundan dolayı MedIOEx kartının doğru çalışabilmesi için aşağıdaki adımların uygulanması gerekmektedir.



              pi@raspberrypi:~ $ sudo su
              root@raspberrypi:/home/pi# mkdir medIOEx-Example
              root@raspberrypi:/home/pi# cd medIOEx-Example
              root@raspberrypi:/home/pi/MedIOEx_Example/MedIOEx# git clone git://github.com/pe2a/MedIOEx.git
              root@raspberrypi:/home/pi/MedIOEx_Example/MedIOEx# cd MedIOEx
              root@raspberrypi:/home/pi/MedIOEx_Example/MedIOEx# tar zxvf bcm2835-1.50.tar.gz
              root@raspberrypi:/home/pi/MedIOEx_Example/MedIOEx# cd bcm2835-1.50
              root@raspberrypi:/home/pi/MedIOEx_Example/MedIOEx/bcm2835-1.50# ./configure
              root@raspberrypi:/home/pi/MedIOEx_Example/MedIOEx/bcm2835-1.50# make
              root@raspberrypi:/home/pi/MedIOEx_Example/MedIOEx/bcm2835-1.50# make check
              root@raspberrypi:/home/pi/MedIOEx_Example/MedIOEx/bcm2835-1.50# make install
              root@raspberrypi:/home/pi/MedIOEx_Example/MedIOEx# cd ..

            

bcm2835 kurulumundan sonra artık pe2a.h kütüphanesini ile programı çalıştırabiliriz.
Eğer yükleme işlemleriniz doğru ise aşağıdaki resimdeki gibi bir dosya dizininiz olması gerekmektedir:

pe2a_download

İlk olarak Digital Output dosyasını çalıştıralım. Bu programı çalıştırabilmek için ilk önce Do_test.c programını derlememiz gerekecek. Aşağıdaki komut satırlarındaki bu işlemleri yaptıktan sonra programınız eğer doğru yüklendi ve derlendiyse tüm ledlerini ve rölelerini açıp/kapayacaktır:

            root@raspberrypi:/home/pi/MedIOEx_Example/MedIOEx# gcc -o Do_test Do_test.c -lbcm2835 pmedex.c -std=gnu11
            

Programı çalıştırabilmek için aşağıdaki komutu yazmak yeterlidir:

            root@raspberrypi:/home/pi/MedIOEx_Example/MedIOEx# ./Do_test 
            

Bcm2835.h ve pe2a.h kütüphanesinin kurulması ve Digital Output fonksiyonlarının C derleyicisi üzerinden derlenip çalışıtırılması ile ilgili video:

MedIOEx Initial Setup | Raspberry IO Shield from Polly Electronics on Vimeo.

MedIOEx Digital Output Function from Polly Electronics on Vimeo.

Eğer ekteki videodaki gibi programınız çalışıyorsa aşağıdaki işlemleri tekrar etmenizde fayda var:

  • github'dan MedIOEx kütüphanesinin indirilmesi,
  • bcm2835 kütüphanesinin kurulması,
  • Digital Output çalıştırılması.
                pe2a.h kütüphanesi C++ standartlarına uygun hale getirilmiştir. Kütüphaneyi g++ derleyicisi ile kullanabilirsiniz. 

Bu dokumanda MedIOEx giriş beslemesinin nasıl olacağı, bcm2835 ve pe2a.h kütüphanesinin kurulumu ile bilgiler verildi. Bu başlangıç ayarlarından sonra artık MedIOEx kütüphanesi ile yapmak istediklerinizi hayata geçirebilirsiniz

Rasperry'de işletim sistemi olarak önerimiz Raspberry'nin resmi işletim sistemi Raspbian Jessie Wih Pixel kullanilmasidir. Download linki: https://www.raspberrypi.org/downloads/raspbian/

            pmedex kütüphanesi Raspbian Jessie üzerinde geliştirilmiştir. 

Teknik Resimler:

MedIOEx Teknik Resim " .pdf "

MedIOEx Teknik Resim " .dwg "

Eğer herhangi bir konuda bize danışmak isterseniz de support@pe2a.com 'dan ulaşabilirsiniz.


Copyright © 2017 Polly Electronics & Automation | 2017 - we pe2a_icon iot

Vimeo Github Facebook Twitter Google Groups