Интересные проекты на ардуино

Разработка механической части

На рисунках сверху приведена исчерпывающая информация о механической части манипулятора и его сборке. В общем-то, при наличии конструктора, возвращаемся на уровень 5-6 лет и собираем все это вместе. Теперь пошагово.

  1. Просверлите два отверстия в качалках от привода. При этом необходимо выдержать расстояние, приведенное на рисунке.
  2. Следующая наша задача — сделать крепеж для основания с приводом. Просверлите 4 отверстия на расстоянии, равном расстоянию между винтами привода и установите его на основание. Мы используем этот привод в качестве неподвижного основания для нашей механической руки.
  3. Прикрепите алюминиевые звенья из конструктора к качалкам приводов. Желательно, чтобы расстояние между двумя качалками примерно было равно 20 сантиметрам.
  4. Прикрепите качалку к неподвижному сервоприводу основания, вторую качалку — ко второму приводу. Перед фиксацией качалок, откалибруйте сервопривода. Установите их таким образом, чтобы положение вала соответствовало 90 градусам, серводвигатель у основания был установлен параллельно звеньям, а серводвигатель на свободном конце — перпендикулярно.
  1. После этого возьмите еще звенья из конструктора и прикрепите их параллельно к свободному концу и серве.
  2. Прикрепите колеса к нижней части механической руки для балансировки и обеспечения поддержки нашей конструкции
  3. Последний серводвигатель должен быть подключен к концу второго звена из 5 пункта.

Подберите подходящую прищепку (или другой схват) и прикрепите ее к серве так, чтобы расстояние от второй сервы до рабочего органа составляло около 20 сантиметров.

При разработке механической части важно выдерживать указанные расстояния — 20, 15 сантиметров и правильно проводить калибровку двигателей. Естественно, доработка конструкции возможна и зависит того, какие именно узлы у вас еще есть в наличии. Например, вместо алюминиевых звеньев из набора конструктора можно использовать обычные линейки, куски пластика и т.п.

Программирование платы Arduino для манипулятора

Эта часть проекта самая интересная и, наверное, самая важная.

Давайте вкратце разберемся, что именно происходит в программной части.

Сначала мы берем изображение и находим его границы. После начинаем рисовать. Процесс рисования состоит из двух частей.

Часть первая. Сначала мы находим пиксель, который соответствует 1, так как наш рисунок теперь представлен в виде 0 и 1. Проходит проверка того, не являются ли пиксели рядом тоже 1, после чего ручка перемещается на выбранный пиксель и удаляет предыдущую 1. Функция повторяется по кругу и позволяет создавать плавные линии.

Вторая часть. Решение обратной задачи кинематики для перемещения рабочего органа к определенному пикселю. При расчете берутся координаты пикселя и вычисляются соответствующие углы приводов. Как именно решается эта задача можно увидеть на рисунке выше.

Теперь перейдем к настройке Matlab и Arduino для отрабатывания кода.

Для начала установите Arduino IO плагин в Matlab.

После этого замените файл arduino.m тем, что прикреплен к проекту под тем же именем.

Скачайте и сохраните finaldraw.m и draw.m в директорию с матлабом.

Загрузите файл adioes.ino на плату Arduino.

Проверьте, к какому порту подключена ваша плата Arduino, после чего откройте finaldraw.m и измените COM3 на ваш порт.

Измените расширение рисунка, который вы хотите нарисовать на .png. Это можно сделать с посощью большинстве графических редакторов. Сохраните полученный файл в директорию с Matlab. Откройте finaldraw.m и измените emma.png на название вашего рисунка с рисширением .png. Схраните файл emma.png.

По молчанию в проекте загружена фотография Эммы Уотсон, которую вы можете использовать для тестирования. Конечно же, вы можете настроить параметры определения положения рабочего органа в соответствии с вашими габаритами конструкции.

На этом все. Подключите вашу плату Arduino к персональному компьютеру, пропишите в командной строке Matlab слово finaldraw и играйтесь.

finaldraw.m — 735 bytes

draw.m 1 KB

arduino.m 96 KB

adioes.ino 25 KB

Программирование продолжается

Алгоритм работы нашего манипулятора достаточно простой. Давайте немного разберемся в этом вопросе.

Сначала мы конвертируем изображение, которое хотим нарисовать в формат png и сохраняем его в папке с Matlab. После этого наш алгоритм преобразовывает рисунок в формат ч/б пикселей, как это показано на рисунке выше. Самая интересная часть — это прорисовка полученных пикселей.

Начинается проверка пикселей конвертированного рисунка. Когда находится 1, которая соответствует белому пикселю на рисунке, рабочий орган перемещается в это положение и опускает ручку. После этого проверяются ближайшие 8 пикселей и, если находится хоть один, ручка перемещается на него, не отрываясь от плоскости. При этом предыдущий пиксель заменяется на 0, чтобы избежать повторов. Таким образом продолжается работа, пока не исчезнут все 1. После этого, рабочий орган перемещается в новое положение проверяет новый массив пикселей. Данный алгоритм позволяет постепенно воспроизвести весь рисунок.

Результат всех приведенных выше пунктов приведен на видео ниже:

Arduino, Raspberry Pi

Arduino — аппаратная платформа для разработки устройств, с платой ввода/вывода и простой средой разработки на Processing/Wiring. Базируется на МК Atmel AVR (ATmega), большинство плат программируются через USB. Платы Arduino позволяют своими руками создавать различные устройства, являются хорошим инструментом для начинающих и обучения МК. Большинство устройств можно собрать даже не прибегая к помощи паяльника!
В данном разделе вы найдете различные интересные схемы и проекты для платформы Arduino, их клонов Freeduino, Seeeduino, а также плат Raspberry Pi, Python и др. Не забудьте посетить форум по Arduino

  • Недорогой тепловизор своими руками
  • Солнечный трекер
  • Система распознавания и слежения за лицами
  • Интервалометр с LCD для Sony NEX
  • Поворотная вебкамера контролируемая Arduino
  • Ethernet камера на базе Arduino
  • Простая камера для замедленной съемки (timelapse) с использованием Raspberry Pi
  • Модернизация поворотного стола для 3D-фото
  • Измеритель ёмкости аккумуляторов (Li-Ion/NiMH/NiCD/Pb)
  • Простой тестер емкости Li-ion аккумуляторов
  • Измерение емкости конденсаторов с помощью Arduino
  • Измеритель индуктивности на базе Arduino
  • Намоточный станок на Arduino
  • Счетчик расхода воды
  • Тахометр на Arduino
  • Измерение тока потребления устройств при помощи токовых датчиков серии ZXCT
  • Мониторинг потребляемой электроэнергии в реальном времени при помощи Arduino и LabView
  • Дисплей для отображения частоты сети электропитания
  • Цифровой вольтметр на Arduino с подключением к ПК через последовательный порт
  • 4-канальный вольтметр с ЖК-индикатором на базе Arduino
  • Парктроник своими руками
  • Велосипедный спидометр на Arduino
  • Как СМСнуть обогревателю?
  • Запуск и сборка GSM модуля M590E
  • GPS-трекер для авто с отправкой данных на сервер с использованием GSM/GPRS шилда
  • Ошейник для кота с GPS навигацией на базе микроконтроллера TinyDuino
  • Портативный компас TinyCompass
  • Текстовой дисплей для удаленной связи с офисом на базе Arduino Uno
  • Умный магнит для холодильника на базе Arduino
  • Устройство мониторинга сейсмоактивности
  • Барометр с расширенными функциями
  • Барометр своими руками
  • ИК-термометр своими руками
  • Инфракрасный датчик движения (PIR сенсор)
  • Автоматическое освещение AtMega328 (PIR)
  • Автономный светодиодный прожектор на Arduino
  • Термореле на NTC резисторе
  • Arduino, датчик движения и релейный модуль
  • Самодельное противоугонное устройство на Ардуино и датчике отпечатков пальцев
  • GSM охранная система для дома на базе Arduino
  • Радиочастотное (RFID) управление доступом с помощью Arduino UNO и модуля EM-18
  • Электронная система учета посетителей
  • Декодер и передатчик азбуки Морзе на Arduino
  • Прием сигнала от нескольких передатчиков 433МГц на Arduino
  • Радио на Arduino
  • Аудиоплеер на Arduino
  • Умный дом с Arduino
  • Cервер домашней метеостанции на Arduino + Виджет на Android для вывода данных
  • Cервер домашней метеостанции на Arduino + Виджет на Android. Добавление датчика BMP085
  • Cервер домашней метеостанции на Arduino — виджет для OS X
  • Метеостанция на Arduino и MR3020 для народного мониторинга
  • Считываем показания температурного датчика DS18B20
  • Метеостанция на Arduino с беспроводным датчиком температуры
  • Arduino: Делаем самостоятельно датчик температуры
  • Метеостанция + построение графика + C#
  • Климатический монитор Смотрителя Убежища в стилe Fallout на ESP8266
  • Датчик температуры и влажности с использованием модуля Wi-Fi ESP8266
  • WiFi ESP8266. Nodemcu Lua для ESP-01. Управление нагрузками по web интерфейсу
  • NodeMCU — быстрый старт для любителей Arduino
  • WeMos D1R2
  • Подключение Arduino к Интернету: настройка режима клиент-сервер, обработка GET и POST запросов
  • Отправка данных с Arduino на сервер (ENC28J60)
  • Детектор загрязнения окружающего воздуха
  • Подключения модуля датчика газа MQ-2 и Arduino
  • Резистивный датчик давления FSR402
  • DDS-генератор синусоидального сигнала
  • Генератор сигналов на Arduino
  • LCD осциллограф на Arduino
  • Подключаем к Arduino модуль Bluetooth
  • Передача данных по Bluetooth между Android и Arduino
  • Управление лампами через смартфон
  • Система управления приборами 220В со смартфона
  • Интернет вещей с RemoteXY
  • Интернет вещей с RemoteXY: конфигурация подключения.
  • Интернет вещей с RemoteXY: работа с он-лайн редактором и элементы оформления интерфейса
  • Интернет вещей с RemoteXY: элементы управления, часть 2
  • Интернет вещей с RemoteXY: элементы индикации
  • Интернет вещей с RemoteXY: элементы управления
  • Умная розетка на примере чайника
  • Arduino как HID устройство
  • Передача MIDI данных в компьютер
  • USB MIDI контроллер на Arduino
  • Емкостная сенсорная Midi клавиатура
  • Мини синтезатор на Arduino с использованием зуммера
  • Простые часы на газоразрядных индикаторах, оптронах и Arduino
  • Часы на Arduino с использованием стандартного индикатора
  • Настройка модуля часов реального времени RTC для Arduino
  • Часы на Ардуино
  • Светодиодные часы на Ардуино
  • O-Clock – простые часы-будильник на Arduino и матричном индикаторе 8х32
  • Будильник с обратным отсчетом на Arduino с дисплеем Nokia 5110
  • OLED i2c дисплей 128х64 пикселя
  • Цветной OLED дисплей 96х64 пикселя
  • Ambilight своими руками
  • Динамическая подсветка для телевизора
  • RGB светодиодная подсветка для пианино
  • JoyLED — нестандартное управление RGB-светодиодом
  • Управление светодиодной лентой с помощью ТВ-пульта и Ардуино
  • Светодиодный диско-пол на Arduino
  • Игровая ТВ-приставка на Arduino. Часть 1
  • Игровая ТВ-приставка на Arduino. Часть 2
  • Тетрис на базе Arduino и двухцветных светодиодных матриц
  • Контроллер кнопок для игры Что? Где? Когда?
  • ГТО по-современному
  • Игрушка на Arduino: Саймон сказал
  • Игра Кости на Arduino
  • Необычное управление светодиодными (и не только) матрицами на Arduino и 74HC585
  • Новогоднее волшебство или магическая коробочка на Arduino
  • Спортивный счётчик на Arduino
  • Датчик проходов на arduino
  • Дигитайзер на arduino uno
  • Управление камерой, приборами и данные с датчиков на экране телевизора
  • TV-выход на Arduino
  • VGA на Arduino
  • Необычный кодовый замок на Arduino
  • Кодовый замок из ардуино
  • Сейф, который распознает цвета
  • Brute Force BIOS’а ПК при помощи Arduino
  • Автоматический контроллер температуры и влажности для домашних питомцев на базе Arduino
  • SMART-GARAGE
  • Сигнализатор замерзших труб на Arduino
  • Простейший звонок с двумя мелодиями
  • Поющее растение на базе Arduino
  • Проигрывание WAV-файлов при помощи Arduino
  • Аудио спектроанализатор на RGB-ленте WS2812
  • Анализатор спектра звука
  • 3x3x3 LED куб
  • Светодиодный куб 4х4х4
  • Светодиодный куб 5х5х5
  • LED Cube 8x8x8 на Arduino с RTC
  • Контроль яркости LED — куба
  • Голографические часы на Arduino
  • Простой POV дисплей на базе Arduino
  • Светодиодная матрица 24×6
  • 3D интерфейс ввода на Arduino
  • Сенсорная панель управления
  • Makey Makey управление новогодней RGB-гирляндой
  • Apple Remote Shield на Arduino
  • Arduino лазертаг
  • Управление iRobot Create с помощью беспроводного геймпада через Arduino
  • Разработка расширения Arduino для мобильных роботов
  • Отправка данных с Arduino на WEB-сервер GET-запросом
  • Управляем любой ДУ техникой дома по ИК с вебстраницы
  • Розетка, активируемая звуком
  • Голосовое управление радиорозетками UNIEL
  • RGB-ночник управляемый руками
  • LANp – лампа RGB из частей сканера контролируемая по сети
  • Световой диммер управляемый Arduino
  • AC диммер на Arduino
  • Измерение освещенности на Arduino и вывод на дисплей Nokia 5110
  • Контроллер день-ночь на базе Arduino
  • Блок питания для Arduino из ATX
  • ATX блок питания управляемый Arduino
  • Arduino своими руками с USB портом
  • Nanino — самодельная Arduino
  • Делаем сами Arduino Uno Mini
  • EGYDuino – клон Arduino своими руками
  • Arduino Pro Mini и UniProf
  • Отладочная плата с микроконтроллером ATmega328
  • Shell-оболочка Bitlash на Arduino
  • Разрабатываем интерпретатор brainfuck на Arduino
  • Запрограммируйте Arduino с помощью Android устройства!
  • Автоматическая кормушка для аквариума
  • Подключение монетоприемника к Arduino
  • Вендинговый разменный автомат на Arduino
  • Подключение PS/2 клавиатуры
  • Мини USB клавиатура на микроконтроллере
  • Пробуждение ПК по сети на Arduino и ENC28J60
  • Запись и чтение на SD-карту
  • Подключение I2C EEPROM к Arduino

Уроки по Ардуино

  • Arduino IDE — введение (видеоурок)
  • Arduino UNO урок 1 — Управление светодиодом
  • Arduino UNO урок 2 — Управление сервоприводом
  • Arduino UNO урок 3 — Тайминг
  • Arduino UNO урок 4 — Бегущий огонь
  • Arduino UNO урок 5 — Fade
  • Arduino UNO урок 6 — Энкодер
  • Arduino UNO урок 7 — Пьезоизлучатель
  • Arduino UNO урок 8 — Ночник
  • Arduino UNO урок 9 — Управление мощной нагрузкой
  • Arduino UNO урок 10 — LCD
  • Arduino UNO урок 11 — Serial LCD
  • Arduino UNO урок 12 — Джойстик
  • Arduino UNO урок 13 — Подключаем драйвер двигателя L298N
  • Arduino UNO урок 14 — Подключаем цифровой компас HMC5883L
  • Управление биполярным шаговым двигателем без использования драйвера
  • Arduino Uno. Подключение ИК-приемника
  • Подключение семисегментного индикатора (1 разряд) к Arduino по SPI
  • Сдвиговый регистр 74HC595
  • Подключение LED матрицы 8*8 к Arduino через сдвиговые регистры
  • Объект String в Arduino и команды через последовательный порт
  • Контроль положения контактов 3-х позиционного переключателя с помощью Ардуино
  • Arduino: спасибо и прощай
  • Android и Arduino. Введение в ADK
  • Android и Arduino. Программное обеспечение
  • Android и Arduino. Привет Arduino из Android
  • Android и Arduino. Привет Android из Arduino
  • Android и Arduino. Двухсторонний обмен данными
  • Курс молодого бойца мира Arduino
  • Курс Arduino — Датчики
  • Курс Arduino — Логика
  • Курс Arduino — Serial Monitor
  • Курс Arduino — Отображение данных на LCD
  • Курс Arduino — Звук
  • Курс Arduino — Моторы
  • Курс Arduino — Микросхемы
  • Курс Arduino — Время и Random
  • Курс Arduino — Прерывания, создание функций, советы
  • Курс Arduino — Модули
  • Курс Arduino — Дальномеры
  • Курс Arduino — Processing
  • Датчики влажности и температуры DHT11 и DHT22
  • Система контроля параметров комнатных растений
  • Логгер температуры и относительной влажности на chipKIT Uno32

Raspberry Pi и другие платы

  • Использование GPIO выводов Raspberry Pi
  • Web-управление Raspberry Pi GPIO
  • Raspberry Pi в качестве FM-передатчика
  • FAQ по Raspberry Pi
  • Raspberry Pi, Raspbian, XBMC и 7 дюймовый сенсорный экран eGalax
  • Hi-Fi-плеер на Raspberry PI с использованием ПО RuneAudio
  • Двойной удар: AirPlay-Pi и новая жизнь старого радио
  • FM радиовещательная станция на Raspberry Pi
  • Медиацентр на Raspberry Pi 2
  • Светодиодное табло, управляемое миникомпьютером Raspberry Pi и WiFi-адаптером
  • Светодиодное табло размером 128×32 пикселей, управляемое микрокомпьютером Raspberry Pi
  • Портативный лэптоп на базе Raspberry Pi
  • Плоттер на Raspberry Pi с использованием компонентов от CD-ROM
  • Подключение приставочных джойстиков NES/Dendy к Raspberry Pi
  • Сундучок на базе Raspberry Pi, который распознает ваше лицо
  • Музыкально-световой клавесин на Intel Galileo
  • Знакомство с платой MicroPython
  • 10 миниатюрных макетных плат для решения любых задач
  • FEZ и .NET Micro Framework
  • Particle Photon
  • DFRobot Curie Nano
  • Latte Panda
  • Обзор FEZ Panda II
  • Netduino: Взаимодействие с символьным ЖК-дисплеем

This entry was posted in Ремонт. Bookmark the <a href="https://kabel-house.ru/remont/interesnye-proekty-na-arduino/" title="Permalink to Интересные проекты на ардуино" rel="bookmark">permalink</a>.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *