Подключаем энкодер к ардуино

  Рет қаралды 38,212

Паяльник TV

Паяльник TV

Күн бұрын

Пікірлер: 45
@JekaMandra
@JekaMandra 5 жыл бұрын
Спасибо. Только ваш код и заработал как надо!
@СанСаныч-я8о
@СанСаныч-я8о 8 жыл бұрын
Спасибо за видео есть ещё способ использование энкодера в ардуино - используя прерывание, мне кажется это более правильный способ #include LiquidCrystal_I2C lcd(0x3F, 20, 4); int Count=0; const int PinCLK = 2; const int PinDT = 4; volatile boolean TurnDetected; volatile boolean up; void encoder(){ volatile boolean CLK = digitalRead(PinCLK); volatile boolean DT = digitalRead(PinDT); up=((!CLK && DT)||(CLK && !DT)); TurnDetected = true; } void setup() { lcd.begin(); lcd.clear(); lcd.home(); pinMode(PinCLK, INPUT); pinMode(PinDT, INPUT); attachInterrupt(0,encoder,CHANGE); } void loop() { lcd.setCursor (0,0); lcd.print(Count); lcd.print(" "); if (TurnDetected) { if (up){ Count++; } else Count--; TurnDetected = false; } }
@Evtomax
@Evtomax 8 жыл бұрын
Энкодер, который крутится вручную, - не такой критически важный и скоростной элемент, чтобы использовать прерывания. На платах Arduino прерывания можно навесить чаще всего только на 2 пина.
@СанСаныч-я8о
@СанСаныч-я8о 8 жыл бұрын
тут я немного не соглашусь - если основной задачей ардуино будет обработка энкодера - то тогда да - смысла использовать прерывания нет - но если написать скетч который выполняет очень много задач в цикле, а энкодер используется допустим для подстройки и очень редко - то лучше использовать прерывание иначе реакция на энкодер будет очень медленной - но и ограничение в 2 прерывание в принципе можно обойти
@Evtomax
@Evtomax 8 жыл бұрын
Если ввод начинает тормозить, то опрос устройств ввода по прерываниям таймера.
@Sherkhan_61
@Sherkhan_61 5 жыл бұрын
@@СанСаныч-я8о, можете на примере скетча научить как это делать? Начинающий. Еще не сталкивался с этим финтом.
@k_alexis79
@k_alexis79 5 жыл бұрын
Ваш код не эффективен, т.к. прибавление и вычитание у вас происходит в основном цикле и счёт происходит не быстрее чем частота циклов. Это должно быть к коде прерывания вместо того, что у вас. Вывод на экран нет необходимости делать каждый цикл, достаточно раз в 100-200 мс. У вас это сильно тормозит цикл.
@payalnik_TV
@payalnik_TV 8 жыл бұрын
Скетчи можно скачать в теме поддержки на форуме. Там же все вопросы по работе схемы: forum.cxem.net/index.php?/topic/177136-подключаем-энкодер-к-ардуино/ Раздел с сотнями проектов на Arduino на сайте: cxem.net/arduino/arduino.php
@SERVICE_KARELIA
@SERVICE_KARELIA 8 ай бұрын
В прямом направлении по положительному фронту, а в обратном - по отрицательному?
@Rus_slan
@Rus_slan 4 жыл бұрын
Хорошо и познавательно. А на счёт управление блоком реле с помощью энкодера. Подскажите?
@user-live_fair
@user-live_fair 5 жыл бұрын
Что необходимо изменить в скетче для появления десятичного значения? То есть надо изменять значения шагом 0,25.
@ВиталийКукоба-ж1д
@ВиталийКукоба-ж1д 8 жыл бұрын
А выложите пожалуйста урок про решение уравнений равновесия схемы на основе законов Ома и Кирхгофа. А то в интернете не нашёл информации на примитивно-понятном языке. Заранее спасибо
@Avlicon
@Avlicon 4 жыл бұрын
Чем отличаются предоставленные вами энкодеры ?
@hagenh3365
@hagenh3365 5 жыл бұрын
Заходим в ардуино.иде управление библиотеками, набираем "encoder", находим encoder step counter, ставим и наслаждайтесь. Да vcc надо подключить к +5v тоже.
@dr.emmettbrown8466
@dr.emmettbrown8466 8 жыл бұрын
А кнопка на энкодере? Я делал через прерывания и для борьбы с дребезгом использовал триггер Шмидта. А вот с кнопкой что то не пошло :(
@Evtomax
@Evtomax 8 жыл бұрын
Для кнопки код будет в одном из следующих видео на нашем канале.
@dr.emmettbrown8466
@dr.emmettbrown8466 8 жыл бұрын
я сам не знаю что не пошло, я поставил кнопку тоже на прерывание с параметром FALLING и контроллер стал подвисать. Честно, я даже не стал разбираться что не так ибо в моем проекте кнопка не нужна и я просто плюнул на это. А вот сам энкодер работает хорошо. А так просто интересуюсь на будущее.
@NovaCat777
@NovaCat777 7 жыл бұрын
Проверил все варианты, не подходят для моего энкодера. У моего не 4е шага за раз, а два, то есть фиксированные позиции 00 и 11. По приведённым кодам у меня счет по два шага с кодом для плавного и с последним кодом считает не на каждый тик, а через один. Как подправить? Разобрался. Надо в LOOP добавить делитель int enc_value = value/2; или просто закомментить valueDec(); и valueInc(); в первом и третьем блоках. Вариант с делителем предпочтительнее, не дает ложного прибавления или вычитания. Второй вариант будет прибавлять или вычитать при не полном шаге.
@itsmakar2412
@itsmakar2412 5 жыл бұрын
Пж скажи что такое двигатель с энкодером (в нем 5 контактов)
@Rin_Media
@Rin_Media 6 жыл бұрын
А как быстро можно крутить что бы Ардуино смог считать импульсы без пропусков? мне нужно сделать счётчик импульсов, и энкодер в нём будет крутиться очень быстро. Точно не знаю, но несколько десятков килогерц думаю точно будет... Сможет ли он считать эти данные на таких скоростях? И вообще какая максимальная скорость считывания у Ардуино? Видео полезное. 👍👍👍. Спасибо за него. Ставлю большой ЛАЙК
@romanlubim55
@romanlubim55 8 жыл бұрын
У меня проблема с энкодером на муз. центре. Работал, спустя некоторое время стал отскакивать назад. Причина в нем или в коде?
@ivperivm10
@ivperivm10 8 жыл бұрын
Роман Ионов контакты стерлись. Можно разобрать и немного подогнуть их
@romanlubim55
@romanlubim55 8 жыл бұрын
хорошо, попробую
@charger3851
@charger3851 4 жыл бұрын
Автор ответь пожайлуста !!!! Как подключить энкодер к Arduino pro micro???я начинающий ничего не понимаю
@ДаниилМакогон-р5е
@ДаниилМакогон-р5е 7 жыл бұрын
а можно Вас попросить о помощи???мне нужно управлять шаговым двигателем с помощью энкодера и выставлять шаг и скорость???
@АлексейБронников-э1е
@АлексейБронников-э1е 8 жыл бұрын
здравсвуйте скаже пажалуста как замерить ток трансформатора тестором ?
@ВладимирПолянский-о2у
@ВладимирПолянский-о2у 8 жыл бұрын
есть ещё проще обработчик энкодера . любой из концевиков энкодера цепляем на аппаратное прерывание ардуинки. а в обработчике прерывания смотрим на значения со второго концевика , если там ноль то крутили в одну сторону а если один то в другую . и ничего запоминать не надо , и в цикле опрашивать тоже , а если поставить аппаратный тригер на концевик который на прерывание работает , то можно и мотором крутить ни разу не собъется ------------- сори не заметил пост Дениса
@Evtomax
@Evtomax 8 жыл бұрын
Вот как раз при использовании прерываний дребезг проявляет себя во всей красе, ибо не фильтруется низкой частотой опроса. Я проводил много экспериментов перед тем, как усложнять обработку (в видео это не попало). Ну и такая примитивная обработка уменьшает разрешение для многих энкодеров. В видео пример есть.
@seriy-1232
@seriy-1232 6 жыл бұрын
Как заменить 2 кнопки "-" и "+" энкодера?!
@qweqwe4693
@qweqwe4693 8 жыл бұрын
В компьютерных мышах тоже энкодер есть?
@Radionewss
@Radionewss 8 жыл бұрын
qwe qwe да, колесо мыши на энкодере
@payalnik_TV
@payalnik_TV 8 жыл бұрын
В старых с колесиками. В оптических нет.
@ИштванГалга
@ИштванГалга 8 жыл бұрын
есть и в новых,точнее в очень новых, где есть еще колесико сверху.
@qweqwe4693
@qweqwe4693 8 жыл бұрын
Паяльник TV Мы про одни и те же колесики говорим?Про те,которыми,например, страницы в браузере вверх вниз крутить?
@Radionewss
@Radionewss 8 жыл бұрын
в современных мышках колесо мыши выполнено либо в исполнении энкодера либо стоит оптопара( светодиод и фотодиод) между которыми колесо на котом прорези. при вращении колеса получаются импульсы.
@ВасилийПупкин-ъ8э9в
@ВасилийПупкин-ъ8э9в 8 жыл бұрын
провода самодельные или готовые? у меня тока f-f
@Evtomax
@Evtomax 8 жыл бұрын
Готовые.
@maxfrvr
@maxfrvr 8 жыл бұрын
Здравствуйте, в чем может быть проблема, повторяю второй скетч из видео( энкодер с фиксированными позициями), у меня идет отсчет только в отрицательную сторону, считает только в одну сторону. Думал энкодер поломанный, загрузил первый скетч, все работает, считает и в плюс и в минус но считает не корректно, если медленно крутить. Короче энкодер рабочий, а все равно только в 1 сторону считает. Где искать решение ?
@JekaMandra
@JekaMandra 5 жыл бұрын
там есть. 3 типа
@Rin_Media
@Rin_Media 6 жыл бұрын
В общем у меня задача сделать прибор для измерения микрон... я думал применить для этого энкодер от струйного принтера (тот, что прозрачным диском сделан)...
@сашамамай-п4г
@сашамамай-п4г 6 жыл бұрын
Может пригодится kzbin.info/www/bejne/e16keqVriMudb6c на 16:50 в видео говорится о импульсах
@СергейТ-ж1э
@СергейТ-ж1э 8 жыл бұрын
Сейчас хотя бы узнал, как он называется. А то резисторами кличал)
@АнатолийПоляков-м4о
@АнатолийПоляков-м4о 6 жыл бұрын
Такая же фигня
@flashmotor3817
@flashmotor3817 4 жыл бұрын
а в скетче делить на 4))))
Термостат на Arduino
8:01
Паяльник TV
Рет қаралды 35 М.
Уроки Arduino. Работа с энкодером
10:55
Заметки Ардуинщика
Рет қаралды 189 М.
How to treat Acne💉
00:31
ISSEI / いっせい
Рет қаралды 108 МЛН
The evil clown plays a prank on the angel
00:39
超人夫妇
Рет қаралды 53 МЛН
Убийца Arduino
10:12
Паяльник TV
Рет қаралды 131 М.
Энкодеры. Подробный обзор с экспериментами!
15:31
Андрей Кулагин
Рет қаралды 103 М.
Уроки Ардуино. Прерывания по таймеру
9:04
Заметки Ардуинщика
Рет қаралды 112 М.
Визитка программиста
19:40
Александр Красников
Рет қаралды 234 М.
Top 10 Arduino projects
21:41
Mr Innovative
Рет қаралды 1,2 МЛН
Уроки Ардуино #16 - аппаратные прерывания
8:05
Заметки Ардуинщика
Рет қаралды 247 М.
How to connect the display from a mobile phone to Arduino
13:58
Home Made
Рет қаралды 1,3 МЛН