Kesinlikle standart bir ağ katmanı seçmek isteyeceksiniz. İnsanların kendi başlarına döndüğü bazı durumlar gördüm ve genellikle protokol verimsiz ve sonunda zaman kaybı. Kanıtlanmış bir ağ katmanı, yerleşik bir aygıtla ağ oluşturmada karşılaşacağınız sorunların çoğunu çözmek için temel işlevler sağlar ve bu da size değerli zaman ve para tasarrufu sağlar.
CANopen'e aşinam var, bu yüzden buraya biraz açıklama yapacağım ve gitmek istediğiniz yolun bu olup olmadığına karar vermenize yardımcı olabilir. Yapmanız gerekene uymuyorsa, başka bir şeye bakardım.
CANopen çok veri merkezlidir. Tüm CANopen bağımlı düğümleri (sensörler veya motor sürücüleri gibi bir ana düğümden kontrol ettiğiniz şeyler) işinizi yapmak için okumanız / yazmanız gereken tüm yapılandırma, kontrol ve veri toplama verilerini içeren bir sözlük sağlar. Daha sonra bu nesneleri SDO (servis veri nesnesi) mekanizması aracılığıyla ayrı ayrı okuyabilir / yazabilir veya PDO (üretici veri nesnesi) mekanizması aracılığıyla zamanlanmış CAN mesajı iletimlerinde bu nesneleri periyodik olarak okuyabilir / yazabilirsiniz. Başlatma, kapatma ve sıfırlama ve kalp atışı / düğüm arızası tespiti, NMT hizmetlerinin yanı sıra bir düğüm kimliği atama hizmetinden (kullanmak istiyorsanız) sağlanır. Gömülü bir CANOpen kütüphanesi kullanarak bir cihaz uygulamak için temel olarak bir nesne sözlüğü ayarlarsınız, PDO'ları düzenli aralıklarla veri güncellemeleri gönderir / alır, ve bu veri girişlerine göre davranan kullanıcı kodunu yazın. CANopen'in sağladığı başka şeyler de var, ama bunun büyük kısmı bu. Daha fazla bilgi için bu kitabı okuyun.