Chciałbym podzielić się wczesnym prototypem aplikacji Python zaprojektowanej do zdalnego dostępu do mierników Fluke za pomocą RS232. Obecnie obsługuje ona podstawową komunikację i pobieranie danych. Używa protokołu CPL przez połączenie RS232 do wysyłania poleceń i odbierania informacji z miernika. Do tej pory był testowany głównie na Fluke 199C.
Sama aplikacja jest napisana w Pythonie z pomocą AI przez @DeDaMrAz, wkrótce zostanie opublikowana na GitHubie. Pełny skrypt znajduje się w załączniku tematu.
Protokół CPL
Fluke CPL to zastrzeżony protokół używany przez firmę Fluke do komunikacji z przyrządami kalibracyjnymi i uruchamiania automatycznych procedur kalibracji. Jest to w zasadzie protokół polecenia/odpowiedzi, który pozwala oprogramowaniu ustawiać zakresy, wyzwalać pomiary, odczytywać wartości i kontrolować stan przyrządu za pośrednictwem GPIB, RS-232 lub USB. Dokumentacja została wydana przez Fluke, dzięki czemu możliwe jest zintegrowanie urządzeń Fluke z niestandardowymi przepływami pracy.
Podłączenie urządzenia
Wiele urządzeń Fluke można podłączyć do komputera za pomocą optycznego interfejsu USB zamiast bezpośredniego połączenia elektrycznego. Ten kabel USB-IR jest zasadniczo adapterem USB do szeregowego z nadajnikiem-odbiornikiem podczerwieni, zaprojektowanym do współpracy z portem optycznym w miernikach i kalibratorach Fluke. Po stronie komputera pojawia się jako wirtualny port COM, a komunikacja CPL przebiega przez niego jak standardowy port szeregowy, podczas gdy łącze optyczne zapewnia izolację i pozwala uniknąć problemów z uziemieniem.
Możliwe jest również wykonanie wersji DIY tego kabla, jak pokazano na poniższym schemacie:
Cechy programu
Górny pasek zawiera wyliczenie portu COM, konfigurację szybkości transmisji, kontrolę połączenia (otwórz/zamknij) i informacje o modelu urządzenia.
Następnie znajdują się oddzielne zakładki. Pierwsza z nich to Live (QM Poll):
QM (Query measurements) i w zależności od miernika i pomiaru wyświetla różne indeksy, na przykład pomiar bezwzględny byłby indeksem 11, względny byłby indeksem 19 (lub 21 na innym mierniku). Zwykle masz min-max-total+absolute w niektórych pomiarach, więc masz 4 indeksy do odczytania
Druga zakładka to Zrzut ekranu:
Tam można pobrać dane pikseli z Fluke, więc jest to w zasadzie zdalny ekran. Pokazuje te same informacje, które są na fizycznym ekranie. Jedyną wadą jest to, że zajmuje to około 15 sekund, aby pobrać pełny ekran przy @19200bps. Prawdopodobnie można to poprawić, używając innego formatu niż Epson Bitmap.
Trzecia zakładka to Waveform:
QW (query waveform) jest zaimplementowany tylko w 199C. Umożliwia ona szybszy dostęp do przebiegu wyświetlanego na ekranie. Przechwycony przebieg może być eksportowany, ale obecnie tylko do surowego formatu binarnego.
Usage
Wystarczy pobrać skrypt i uruchomić go w Pythonie. Możesz również potrzebować zainstalować zależności:
py pip install pyserial numpy pillow matplotlib
Podsumowanie
To jest wstępna wersja narzędzia Fluke Python. Nie wszystkie polecenia są zaimplementowane, ale nadal zapewnia szeroki dostęp do różnych funkcji Fluke. Do tej pory był testowany głównie na Fluke 199C i Fluke 97. Jeśli ktoś z czytelników ma inny model Fluke, który może być kompatybilny, może pobrać skrypt i dać nam znać, jak działa! Ponadto, jakie funkcje mogą być przydatne i powinny zostać dodane w najbliższej przyszłości?
Załączam najnowszą wersję skryptu i dokumentację Fluke, której używaliśmy jako odniesienia .
Fajne? Ranking DIY Pomogłem? Kup mi kawę.