Оглавление:

Учебное пособие Sparkfun CAN Bus Shield: 6 шагов
Учебное пособие Sparkfun CAN Bus Shield: 6 шагов

Видео: Учебное пособие Sparkfun CAN Bus Shield: 6 шагов

Видео: Учебное пособие Sparkfun CAN Bus Shield: 6 шагов
Видео: Учебное пособие по CAN-ШИНЕ PT1. Как начать работу с щитом CAN BUS KS0411 из внутренних районов. 2024, Июль
Anonim
Учебное пособие по Sparkfun CAN Bus Shield
Учебное пособие по Sparkfun CAN Bus Shield

Получение и передача сообщений с помощью Sparkfun CAN Bus Shield

Что такое CAN?

Шина CAN была разработана компанией BOSCH как система широковещательной передачи сообщений с несколькими ведущими, которая определяет максимальную скорость передачи сигналов 1 мегабит в секунду (бит / с). В отличие от традиционных сетей, таких как USB или Ethernet, CAN не отправляет большие блоки данных от узла A к узлу B под контролем мастера центральной шины. В сети CAN множество коротких сообщений, таких как температура или число оборотов в минуту, передаются по всей сети, что обеспечивает согласованность данных в каждом узле системы.

Шаг 1. Необходимые материалы

2 - Щиток шины CAN Sparkfun

2 - Arduino UNO

2 - резисторы 120 Ом

1 - Макетная плата

Провода перемычки

Библиотека CAN Bus Shield Скачать:

drive.google.com/open?id=1Mnf2PN_fAQFpo1ID…

Дополнительно (шина CAN):

DB9 (женский)

RJ45

Кабель UTP

Двухполосный разветвитель RJ45

Прямой разъем RJ45

Инструменты:

Отвертка

Обжимной RJ45

Паяльник

Шаг 2: построение CAN-шины на макетной плате

Создание CAN-шины на макетной плате
Создание CAN-шины на макетной плате

1. Установите экран шины CAN на каждый Arduino.

2. Подключите контакты CAN_H и CAN_L экрана к макетной плате.

3. Подключите согласующие резисторы на 120 Ом на каждом конце линий CAN_H и CAN_L.

Шаг 3: Программирование Arduino

Программирование Arduino
Программирование Arduino

1. Загрузите и установите библиотеку CAN Bus Shield по указанной выше ссылке.

Настройте 1-й Arduino для чтения сообщений CAN

2. Откройте Arduino IDE.

3. Перейдите в раздел Примеры файлов SparkFun CAN-Bus CAN_Read_Demo

4. Выберите соответствующий порт первого Arduino и загрузите его.

Настройте 2-й Arduino для отправки сообщений CAN

5. Откройте новую IDE Arduino.

6. Перейдите в раздел Примеры файлов SparkFun CAN-Bus CAN_Write_Demo

7. Выберите соответствующий порт второго Arduino и загрузите его.

Шаг 4: Тестирование

/ * Добавляем картинки рабочего примера * /

После загрузки программы на два Arduinos…

1. Откройте последовательные мониторы первого и второго Arduino.

2. Установите скорость передачи 9600 бод.

3. Проверьте, получены ли данные первым Arduino.

Если данные не получены:

1. Проверьте, выбран ли соответствующий порт и скорость передачи для каждого Arduino.

2. Проверьте соединения линий CAN_H и CAN_L.

3. Проверьте подключение согласующих резисторов.

Шаг 5. Изучите

Создавайте собственные сообщения CAN

Измените программу CAN_Write_Demo на…

  • изменить идентификатор сообщения (message.id)
  • изменить бит RTR (message.header.rtr)
  • установить длину данных (message.header.length)
  • введите свои данные (message.data [x])

Отредактируйте CAN_Read_Demo, чтобы настроить способ печати ваших данных.

  • Распечатайте идентификатор сообщения (message.id)
  • Вывести длину сообщения (message.header.length)
  • Распечатать данные сообщения (message.data [x])

Шаг 6: (Дополнительно) Создайте шину CAN с помощью UTP

(Дополнительно) Создание шины CAN с использованием UTP
(Дополнительно) Создание шины CAN с использованием UTP
(Дополнительно) Создание шины CAN с использованием UTP
(Дополнительно) Создание шины CAN с использованием UTP
(Дополнительно) Создание шины CAN с использованием UTP
(Дополнительно) Создание шины CAN с использованием UTP

Шина CAN, используемая на этой схеме, представляет собой 8-контактный кабель UTP.

На этой схеме есть два типа разъемов, а именно (DB9 - к - RJ45) и (RJ45 - к - RJ45).

DB9 - к - RJ45

DB9 (контакты 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br

RJ45 (контакты 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br

RJ45 - к - RJ45 (прямой)

RJ45 (контакты 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br

RJ45 (контакты 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br

RJ45 - к - Терминатору

RJ45 (контакты 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br

Терминаторный резистор (wG, wBl)

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

Для двухузлового соединения используется прямой разъем RJ45 между кабелями (DB9 - to - RJ45).

Для трехузлового соединения двухсторонний разветвитель соединен с прямым соединителем для создания Т-образного соединения между всеми кабелями (DB9 - к - RJ45).

Для соединения 2+ узлов (2 или более узлов) двухсторонний разветвитель соединяется с прямым соединителем для создания "T" соединения. Кабель (RJ45 - к - RJ45) используется для соединения двух узлов «T», а кабель (DB9 - на - RJ45) используется для подключения узла «T» к экрану шины CAN. RJ45-to-Terminator использовался на каждом конце "T" CAN-шины.

Рекомендуемые: