Оглавление:
- Шаг 1: необходимо
- Шаг 2: Установка необходимого программного обеспечения на Raspbian
- Шаг 3: Подключение Arduino
- Шаг 4: кодирование Arduino
- Шаг 5: Программирование RS485 на Raspberry
- Шаг 6: Тестирование скрипта
- Шаг 7: Заключение
Видео: RS485 между Arduino и Raspberry Pi: 7 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:49
Для школы мне нужно сделать проект. Я решил сделать умный контроллер теплицы полностью управляемым Raspberry Pi. Датчики будут питаться от Arduino Uno. В течение следующих месяцев я буду публиковать пошаговые инструкции по созданию этого проекта, чтобы вы тоже смогли его реализовать. Мне требовалась последовательная связь, которую можно было бы использовать на больших расстояниях. RS485 идеально подходит для этого. RS485 поддерживает скорость до 10 Мбит / с и расстояние до 1200 метров. В зависимости от длины кабеля вам необходимо снизить скорость отправки. Посмотрите на эту таблицу, чтобы узнать максимальную скорость на расстояние. Для чтения и установки значений на ведомом устройстве RS485 я буду использовать язык Python.
Шаг 1: необходимо
Части:
- Raspberry PI (я использую 3B +)
- Модуль MAX485
- Интерфейс USB к RS485
- несколько перемычек
- arduino uno
Шаг 2: Установка необходимого программного обеспечения на Raspbian
Я не буду обсуждать, как установить raspbian на вашу малину. Уже есть некоторые инструкции, описывающие это. Вместо этого я собираюсь описать, как установить необходимое программное обеспечение.
Сначала обновите малину:
подходящее обновление
Затем установите pip:
apt-get установить python3-pip
Нажмите Enter для Да
Затем установите minimalmodbus:
pip3 install -U minimalmodbus
Шаг 3: Подключение Arduino
На изображении выше вы можете увидеть, как подключить Arduino к интерфейсу RS485. Второй RS485 представляет собой переходник с USB на RS485.
Шаг 4: кодирование Arduino
Сначала импортируйте эту библиотеку через скетч, используйте библиотеку и добавьте zip-библиотеку. Затем загрузите скетч, который я включил в качестве вложения. Это код для подчиненного узла Arduino, который позволяет управлять встроенным светодиодом на выводе 13 Arduino.
Шаг 5: Программирование RS485 на Raspberry
Теперь мы собираемся запрограммировать Raspberry Pi в качестве мастера.
- Откройте терминал на своем raspberry pi.
- Создайте новый файл modbus.py
vi modbus.py
- тип i для вставки
- вставьте код в файл
- нажмите клавишу выхода
- тип: wq
- нажмите клавишу ввода
Шаг 6: Тестирование скрипта
Введите команду:
python3 modbus.py
Теперь введите 1 или 0, и вы увидите, как светодиод на Arduino загорается и гаснет.
Шаг 7: Заключение
Это был первый шаг к созданию моего полного контроллера теплицы. Через RS485 я могу включить свои клапаны и прочитать значения датчиков. Надеюсь, вам понравится эта инструкция.
Для тех, кто говорит по-голландски, вы можете следить за моим проектом здесь. Когда проект будет завершен, я сделаю расширенное руководство по моему завершенному проекту.
Рекомендуемые:
Офис на батарейках. Солнечная система с автоматическим переключением между восточными и западными панелями солнечных батарей и ветряной турбиной: 11 шагов (с изображениями)
Офис на батарейках. Солнечная система с автоматическим переключением между востоком и западом. Панели солнечных батарей и ветряная турбина. Проект: офис площадью 200 квадратных футов должен работать от батареи. В офисе также должны быть все контроллеры, батареи и компоненты, необходимые для этой системы. Солнечная и ветровая энергия заряжают батареи. Есть небольшая проблема только
Автоматическое переключение между Shop Vac (не требуется Arduino): 7 шагов
Автоматическое переключение Shop Vac (Arduino не требуется): Как и у многих мастеров-любителей, у меня есть пылесос, прикрепленный к моей настольной пиле, и каждый раз, когда я хочу выполнить рез, я должен включать его, прежде чем включать пилу. Это может показаться глупым, но включать и выключать магазинный пылесос как можно больше - головная боль
Разница между (альтернативный и постоянный ток): 13 шагов
Разница между (альтернативным и постоянным током): Всем известно, что электричество в основном постоянное, но как насчет другого типа электричества? Вы знаете Ас? Что означает AC? Можно ли тогда использовать DC? В этом исследовании мы узнаем разницу между типами электричества, источниками, применением
Управление сервоприводом с помощью MPU6050 между Arduino и ESP8266 с помощью HC-12: 6 шагов
Управление сервоприводом с помощью MPU6050 между Arduino и ESP8266 с помощью HC-12: в этом проекте мы контролируем положение серводвигателя с помощью mpu6050 и HC-12 для связи между Arduino UNO и ESP8266 NodeMCU
NRF24L01 Беспроводная передача данных между Arduino: 10 шагов
NRF24L01 Беспроводная передача данных между Arduino: NRF24L01 - это маломощный беспроводной радиочастотный модуль 2,4 ГГц от Nordic Semiconductors. Он может работать со скоростью от 250 кбит / с до 2 Мбит / с. Если он работает на открытом пространстве с более низкой скоростью передачи, он может достигать 300 футов. Короче говоря