Датчики Холла - це датчики, які виробляють електричний сигнал на своєму виході при контакті з магнітним полем. Аналогове значення електричного сигналу на виході датчика є функцією сили магнітного поля. Датчики Холла сьогодні є скрізь, вони використовуються з різних причин та у всіх видах пристроїв, починаючи від мобільних телефонів і закінчуючи перемикачами, для вимірювання швидкості, положення та відстані в автомобілях та інших продуктах, заснованих на автомобільній промисловості. Ця універсальність датчика Холла робить їх необхідними для виробників та інженерів-електриків, тому сьогодні я покажу нам, як використовувати датчик Холла в проекті на основі Raspberry Pi.
Ви можете будь-коли перевірити наші інші проекти на основі датчиків Холла, включаючи взаємодію датчика Холу з Arduino.
Необхідні компоненти
Для побудови цього проекту необхідні такі компоненти / деталі;
- Малина пі 2 або 3
- SD-карта (мінімум 8 Гб)
- Датчик ефекту Холла
- Провід перемички
- Макети
- LAN-кабель
- Джерело живлення
Деякі додаткові деталі, які можуть бути використані, включають:
- Монітор
- Клавіатура та миша
- Кабель HDMI
- Ключ Wi-Fi
Цей підручник базуватиметься на розтяжній ОС Raspbian, тому, щоб продовжувати, як зазвичай, я вважаю, що ви знайомі з налаштуванням Raspberry Pi за допомогою розтяжної ОС Raspbian, і ви знаєте, як SSH в Raspberry pi за допомогою термінального програмного забезпечення, такого як шпаклівка. Якщо у вас є проблеми з цим, на цьому веб-сайті є безліч підручників з Raspberry Pi, які можуть вам допомогти.
Для тих, хто вперше встановлюватиме розтяжну ОС Raspbian, одна проблема, яку я виявив у більшості людей, - це потрапляння в Raspberry Pi через ssh. Слід зазначити, що ssh спочатку вимкнено в ОС, і вам знадобиться або монітор, щоб його ввімкнути, або в налаштуваннях конфігурації Raspberry Pi, або ви створюєте порожній файл із назвою ssh за допомогою вашого Windows або комп'ютера Linux і копіюєте порожній файл кореневий каталог SD-карти. Вам потрібно буде вставити кошик SD у гніздо для карт SDd комп’ютера, щоб скопіювати на нього.
Використання другого методу більше підходить тим, хто працює на пі в режимі без голови. Коли всі деталі готові, ми можемо переходити до будівництва.
Кругова діаграма:
Для використання датчика ефекту Холла з Raspberry Pi підключіть компоненти відповідно до схеми нижче.
Датчик Холла, що використовується для цього підручника, може на виході подавати як аналогові, так і цифрові значення. Але для спрощення підручника я вирішив використати цифрове значення, оскільки для використання аналогового виходу потрібно підключення АЦП до Raspberry Pi.
Код Python та робоче пояснення:
Код Python для цього проекту датчика Хола дуже простий, нам потрібно лише прочитати вихідні дані датчика Холла та відповідно увімкнути або вимкнути світлодіод. Світлодіод слід увімкнути, якщо виявлено магніт, і в іншому випадку його слід вимкнути.
Увімкніть ваш Raspberry Pi і SSH в нього за допомогою шпаклівки (якщо підключений у безголовому режимі, як я). Як зазвичай з більшістю моїх проектів, я створюю каталог всередині домашнього каталогу, де зберігається все про кожен проект, тому для цього проекту ми створимо каталог із назвою Hall . Зверніть увагу, що це лише особисті уподобання, щоб тримати справи організованими.
Створіть каталог за допомогою;
mkdir Hallsensor
Змініть каталог на новий щойно створений каталог і відкрийте редактор, щоб створити скрипт python за допомогою;
компакт-диск холсенсор
слідом за ним;
nano hallsensorcode.py
Після відкриття редактора ми вводимо код проекту. Я проведу коротку розбивку коду, щоб показати ключові поняття, і повний код python стане доступним після цього.
Ми починаємо код, імпортуючи бібліотеку RPI.GPIO, яка дозволяє нам писати скрипти python для взаємодії зі шпильками Raspberry pi GPIO.
імпортувати RPi.GPIO як gpio
Далі ми встановлюємо конфігурацію нумерації для GPIO Rpi, яку ми хотіли б використовувати, і вимкнути попередження GPIO, щоб дозволити виконання коду у вільному потоці.
gpio.setmode (gpio.BCM) gpio.setwarnings (False)
Потім ми встановлюємо декларування штифтів GPIO, до яких підключено світлодіод та цифровий вихід датчика залу, відповідно до обраної нумерації BCM.
шпилька = 2 шпилька = 3
Далі ми встановлюємо шпильки GPIO як вхідні чи вихідні. Висновком встановлено штифт, з яким підключений світлодіод, а вхідним - той, до якого підключений датчик Холла.
gpio.setup (застібка, gpio.IN) gpio.setup (ledpin, gpio.OUT)
Зробивши це, ми напишемо основну частину коду, яка є в той час як цикл, який постійно оцінює вихідний сигнал від датчика Холла і світлодіод загоряється, якщо магніт виявлений і вимикає світлодіод, коли магніт не розпізнаний.
while True: if (gpio.input (hallpin) == False): gpio.output (ledpin, True) print ("виявлено магніт") else: gpio.output (ledpin, False) print ("магнітне поле не виявлено")
Повний пітон код з демо - відео наводиться в кінці проекту.
Скопіюйте та збережіть код та вийдіть із редактора після введення;
CTRL + X, а потім y .
Після збереження ще раз перегляньте з'єднання та запустіть скрипт python, використовуючи;
sudo python hallsensorcode.py
Коли сценарій запущений, щоразу, коли магніт або щось магнітне наближається до датчика Хола, світлодіод загоряється, як показано на зображенні нижче.
Від герконових перемикачів для розумного будинку до спідометрів для велосипеда, є кілька надзвичайно цікавих матеріалів, які можна створити за допомогою цього підручника біля основи. Не соромтеся поділитися будь-яким проектом, який ви плануєте побудувати, у розділі коментарів нижче.
Усі перевіряють наші попередні проекти на основі датчиків залу:
- DIY спідометр за допомогою Arduino та обробки додатка Android
- Цифровий контур спідометра та одометра за допомогою мікроконтролера PIC
- Віртуальна реальність за допомогою Arduino та обробки
- Вимірювання напруженості магнітного поля за допомогою Arduino