2016-04-14 24 views
0

Modbus kullanarak birbirleriyle iletişim kurabilen 2 cihazım var ve bu iletişim hattını günlüğe kaydetme amacıyla Python kullanarak koklamak istiyorum. Bilgisayarımı bir iletişim veriyoluna bir Modbus dongle üzerinden bağladım, ancak verileri gerçekten nasıl okuyabileceğimi bilmiyorum.Python kullanarak Modbus koklama

önce Pymodbus kullanmış, ama sadece ana veya bağımlı aygıtlar için izin verdiği bu

başka kütüphaneler var (olarak bildiğim kadarıyla) bu durumda işe yarayacağını sanmıyorum that I can Amacım için kullan? COM portunda, sadece otobüste var olan iletişimi etkilemeyen bir salt okunur soket gibi bir şey uygulamak mümkün olabilir mi?

Teşekkür ederiz!

+0

Temel olarak temelde temel bir seri bağlantı, A ve B arasındaki iletime engel olmayan bir bağlantı kurabiliyorsanız, verileri yalnızca ham veri olarak okuyabilir ve ayrıştırırsınız. Evet normalde pymodbus ya bir slave ya da master olacaktır ve bu nedenle buna göre verileri ayrıştırırsınız, fakat temelde 'tcpdump' yerine seri veri istersiniz? Ham seri verileri döktükten sonra kendi ayrıştırma için yapılacaktır. Mümkünse sadece http://freecode.com/projects/linuxserialsniffer/ – Torxed

cevap

-1

this one gibi bir MODBUS simülatörünü deneyebilirsiniz: Otobüsteki etkinliği görme seçeneği vardır.

Başka bir python MODBUS kullanmak isterseniz modbus_tk'u kullanmanızı öneririz. Bir MODBUS simülatörünün nasıl oluşturulacağına dair bir örneğe sahiptir. Ancak diğer cihazlara gönderilen paketleri koklayabilmek için otomatik yanıtı devre dışı bırakmak için bazı değişiklikler yapmanız gerekecektir.

Yapmak istediğiniz tek şey, otobüse faaliyeti görmekse, ilk seçeneği öneririm.

Umarım bu size yardımcı olur.

[Düzenle]: Aşağıdaki yazılımı indirmek gerekecektir Daha spesifik olmak gerekirse: Modbus Poll - (Windows üzerinde çalışır) MODBUS slave simülatörü ve kullanmak niyetinde limanda senin MODBUS kilidini takın. Seri iletişim için tüm ayarları yaptıktan sonra Ekran sekmesine gidin ve İletişim'a tıklayın. Hat üzerindeki trafiği görebileceksiniz.

+0

kullanın. Bu bağlantı soruyu yanıtlayabilirken, cevabın temel kısımlarını buraya dahil etmek ve referans için bağlantı sağlamak daha iyidir. Bağlantılı sayfa değiştiğinde yalnızca bağlantı yanıtları geçersiz olabilir. - [Yorum yaz] (/ review/düşük kaliteli yazılar/14126442) – Julien

+0

Öneriniz için teşekkürler, gönderilerimi geliştirmeye çalışacağım – aoprisor