1

У меня есть один из этих цифровых датчиков давления, который выводит сигнал CANopen (CAN-BUS).

Каков наилучший способ получить данные через порт USB на моем компьютере? Могу ли я просто CAN_H и CAN_L к USB + и USB- и V+/- к внешнему источнику питания?

Может быть, USB это не тот путь. Могу ли я подключить это к порту Ethernet?

Как только проводка будет завершена, каков будет самый простой способ декодирования данных в моей ОС? Я не буду уклоняться от программирования, но я потерялся в море CAN-протоколов и мне нужно какое-то направление! У меня есть доступ к коробке Linux, Mac и ПК.

3 ответа3

2

Адаптеры преобразования CAN-USB, которые я видел, содержат специальный микропроцессор для обработки деталей преобразования, поэтому я не слишком уверен в возможности пайки одного для себя.

Примером на Amazon является USB-CAN Адаптер конвертера USB-CAN Bus с кабелем USB, стоимостью $ 46,99. Я не знаю, как это устройство будет выглядеть для Windows и требует ли оно специального драйвера.

1

Этот датчик выводит данные на шину CAN, которая является сетью, в основном предназначенной для использования в автомобилях (она широко используется для соединения ЭБУ внутри транспортных средств и позволяет им взаимодействовать друг с другом).

CAN сильно отличается от USB, и их прямое подключение может привести к аварии, повредив USB-контроллер и, возможно, всю материнскую плату.

Если вы все еще хотите использовать этот датчик, вам понадобится устройство для преобразования шины CAN в то, что ваш компьютер может принять, например USB, RS232 (если у вас есть последовательный порт) или даже Ethernet - вот пример CAN <-> USB конвертер.

Обратите внимание, что программное обеспечение для чтения данных с такого датчика уже не создано, поскольку почти каждый интерфейс CAN имеет свои собственные API-интерфейсы, а каждый датчик имеет свои форматы данных и другие данные, поэтому вам необходимо запрограммировать приложение для чтения датчика. ,

Посмотрите на SDK и примеры, предоставляемые с вашим интерфейсом CAN, чтобы узнать, как "общаться" с шиной CAN, а затем посмотрите на таблицу данных вашего датчика, как на самом деле "поговорить" с ним и получить его значения.

1

Я не уверен, что ваше приложение, но чтение данных с этого датчика не так просто. Как сказал Андре, это устройство CAN; в частности, это протокол CANopen . Если подключить его к USB, это приведет к разрушению плохого компьютера, к которому вы его подключите.

Я бы порекомендовал провести некоторые исследования протокола CAN-BUS, чтобы увидеть, как он работает. Для начала я бы порекомендовал приобрести Arduino (возможно, стартовый комплект, подобный этому или этому) и этот щит CAN-BUS (вот библиотека). Затем посмотрите на таблицу для вашего датчика, чтобы увидеть, как с ним связаться. USB-соединение с Arduino позволит вам получить доступ к последовательной информации, отправленной с Arduino на ваш компьютер (например, уровень давления). Тем не менее, Arduino является микроконтроллером, и он может быть удовлетворительным в качестве одного контроллера для вашего приложения, что устраняет необходимость в USB.

Если все это кажется у вас над головой, вы можете выбрать более простой датчик давления, такой как этот (таблица данных) из серии Honeywell MLH. Это простой аналоговый датчик, который использует напряжение (5 В, идеально подходит для Arduino) для вывода значения давления.

Датчик, который у вас есть, очень тяжелый (металлический корпус с диапазоном около 1200 фунтов на квадратный дюйм), и он, вероятно, излишним для большинства приложений, но я не знаю, для чего вы его используете. Если это что-то простое с не таким большим давлением, я бы порекомендовал приобрести другой датчик, который обладает большей точностью и точностью для диапазона давления, который вы измеряете.

Хотя вы можете выбрать адаптер CAN-USB, такой как этот коммерческий или более документированный, я бы поспорил, что вы обнаружите, что его возможности ограничены сразу и / или в будущем. При этом я бы порекомендовал решение Arduino, а не USB-адаптер.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .