Python - выборка данных из двух последовательных портов в режиме реального времени - PullRequest
0 голосов
/ 08 февраля 2011

Мой проект - это направленная антенна, которая установлена ​​на самостабилизирующемся основании. Язык, который я хочу использовать, - это python, но при необходимости можно изменить его на более подходящий язык.

Задача 1:

Как бы вы поступили с последовательными данными в режиме реального времени [1] , а затем проанализировали данные в python?

Задача 2:

Как я могу затем отправить вывод программы на сервоприводы, которые смонтированы на базе? (система обратной связи).

[1] (максимально быстрое время для передачи, обработки и последующего вывода данных)

1 Ответ

1 голос
/ 08 февраля 2011

Вы можете использовать модуль pyserial для чтения данных последовательного порта с помощью Python. Смотри: http://pyserial.sourceforge.net/shortintro.html

Вот краткий пример использования из документов:

>>> ser = serial.Serial('/dev/ttyS1', 19200, timeout=1)
>>> x = ser.read()          # read one byte
>>> s = ser.read(10)        # read up to ten bytes (timeout)
>>> line = ser.readline()   # read a '\n' terminated line
>>> ser.close()

Далее вам необходимо проанализировать данные GPS. Большинство устройств поддерживают формат " NMEA 0183 ", и вот еще один вопрос SO с информацией о синтаксическом анализе этого с Python: Анализ вывода GPS-приемника через регулярное выражение в Python

Наконец, вывод данных для сервоуправления будет полностью зависеть от того, какое оборудование вы используете для сервоинтерфейса.

...