Arduino — самая популярная платформа любительской и образовательной робототехники. Arduino (Ардуино) – это серия плат ввода-вывода. Платы имеют аналоговые и цифровые порты, к которым можно подключатьразличные устройства (DIY-компоненты): светодиоды, датчики, кнопки, моторы, сервоприводы и т.д. Впродаже есть отдельные платы Arduino нескольких видов, их аналоги, различные дополнительные компоненты, готовые наборы (kits), содержащие плату и компоненты, иготовые роботы на основе Arduino. Наиболее эффективно начинать изучение Arduino с наборов Arduino Starter Kit.Эти комплекты содержат самую популярную Arduino-плату – Arduino UNOи другие электронные компоненты, необходимые для начального изучения Arduino: светодиоды, резисторы, сервопривод, мотор, кнопку, жидкокристаллический экран, пьезоэлемент, датчики и прочее. Практически любой из таких наборов содержит необходимый минимум для начинающих и подходит для освоения платформы Arduino. Новый стартовый набор Arduino Starter Kit №7 содержит следующие компоненты: Arduino R3 CH340 +USBкабель Датчик воды и глубины погружения Датчик звука Датчик огня Датчик температуры LM335 (Аналоговый) Датчик температуры и влажности DHT11 Двигатель шаговый. 4-х фазный с платой управления Дисплей символьный LCD1602 Зуммер активный Зуммер пассивный ИК-приёмник ИК-пульт дистанционного управления Индикатор 7-сегментный одноразрядный Индикатор 7-сегментный четырёхразрядный Кабель MF Dupont 10 разноцветных жил Кнопка тактовая Комплект цветных монтажных перемычек MM для макетных плат без пайки BBJ-65 Конденсатор электролитический Макетная плата для монтажа без пайки 830 точек Матричная 16-кнопочная клавиатура 4х4 Микросхема 74HC595 (Сдвиговый регистр) Модуль 2-координатного джойстика Модуль RGB светодиода Модуль одноканального реле Модуль считывателя RFID-меток 13,56 МГц (RC522) Модуль часов реального времени RTC(DS1307) Переходник для Кроны Потенциометр Резисторы (220 Ом, 10 кОм, 1 кОм) (30 штук) Светодиодная матрица 8х8 Фоторезистор Светодиоды (красный, Зеленый, Желтый) (15 штук) Сервопривод SG-90
Его основное отличие от других наборов – наличие модуля считывателя RFID-меток 13,56 МГц (RC522), что позволит познакомиться с технологией автоматической бесконтактной идентификации объектов при помощи радиочастотного канала связи – RFID. Идентификация объектов производится по уникальному цифровому коду, который считывается из памяти электронной метки, прикрепляемой к объекту идентификации. Считыватель содержит в своем составе передатчик и антенну, посредством которых излучается электромагнитное поле определенной частоты. Попавшие в зону действия считывающего поля радиочастотные метки "отвечают" собственным сигналом, содержащим информацию (идентификационный номер товара, пользовательские данные и т. д.). Сигнал улавливается антенной считывателя, информация расшифровывается и передается в компьютер для обработки.Настоящую защиту от копирования и подделки обеспечивают такие идентификаторы, в чипах которых реализована криптографическая защита. Это бесконтактные смарт-карты, работающие на частоте 13,56 МГц, наиболее распространенными из них являются карты Mifare®. В картах этих стандартов криптозащита организована на высоком уровне, и подделка таких карт практически невозможна.
Модуль RC522 – RFID-модуль 13,56 МГц с SPI-интерфейсом. В комплекте к модулю идут 2 RFID-метки – в виде карты и брелока.
Подключим к плате Arduino модуль RC522 и будем выводить в последовательный порт и на дисплей WH1602 уникальный идентификационный номер (UID) RFID-метки. Необходимые компоненты: контроллер Arduino UNO R3; LCD-экран WH1602; потенциометр 1 кОм; блок питания 5В 1А; плата для прототипирования; RFID-считыватель RC522; брелок; карта; провода папа-папа. Схема подключения элементов создана в программе Fritzing:
Загружаем в Arduino следующий скетч:
// Подключение библиотек для MFR522 #include #include // константы подключения контактов SS и RST #define RST_PIN 9 #define SS_PIN 10 // Инициализация MFRC522 MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance. // Подключение библиотеки для дисплея #include // инициализация с указанием контактов подключения // rs, enable, d4, d5, d6, d7 LiquidCrystallcd(2,3,4,5,6,7); void setup() { Serial.begin(9600); // инициализация последовательного порта SPI.begin(); // инициализация SPI mfrc522.PCD_Init(); // инициализация MFRC522 // установить размерность дисплея lcd.begin(16,2); // очистить дисплей lcd.clear(); // прилашающая надпись lcd.setCursor(0,1); lcd.print("> wait "); } void loop() { if ( ! mfrc522.PICC_IsNewCardPresent()) return; // чтение карты if ( ! mfrc522.PICC_ReadCardSerial()) return; // показать результат чтения UID и тип метки Serial.print(F("Card UID:")); dump_byte_array(mfrc522.uid.uidByte, mfrc522.uid.size); Serial.println(); Serial.print(F("PICC type: ")); byte piccType = mfrc522.PICC_GetType(mfrc522.uid.sak); Serial.println(mfrc522.PICC_GetTypeName(piccType)); delay(3000); } // Вывод результата чтения данных в HEX-виде void dump_byte_array(byte *buffer, byte bufferSize) { // очистить строку дисплея lcd.setCursor(0,0); lcd.print(" "); lcd.setCursor(0,0); for (byte i = 0; i < bufferSize; i++) { Serial.print(buffer[i] < 0x10 ? " 0" : " "); Serial.print(buffer[i], HEX); lcd.print (buffer[i], HEX); } }
Вот результат вывода результатов чтения меток (брелков и карт).
В качестве учебника для освоения набора рекомендуем книгу Практическая энциклопедия Arduino. В книге подробно описаны проекты на основе контроллера Arduino UNO R3.Расчитана как на опытных пользователей, так и на только начинающих изучать основы электроники, программирования и робототехники.