Поиск по сайту

Результаты поиска по тегам 'энкодер'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип публикаций


Категории и разделы

  • Вопрос-Ответ. Для начинающих
    • Песочница (Q&A)
    • Дайте схему!
    • Школьникам и студентам
    • Начинающим
    • Паяльник TV
    • Обсуждение материалов с сайта
  • Радиоэлектроника для профессионалов
    • Световые эффекты и LED
    • Роботы и модели на ДУ-управлении
    • Автоматика
    • Самодельные устройства к компьютеру
    • Программное обеспечение
    • Автомобильная электроника
    • Системы охраны и наблюдения. Личная безопасность
    • Питание
    • Электрика
    • Промышленная электроника
    • Ремонт
    • Металлоискатели
    • Измерительная техника
    • Мастерская радиолюбителя
    • Сотовая связь
    • Спутниковое ТВ
    • КВ и УКВ радиосвязь
    • Жучки
    • Телефония и фрикинг
    • Высокое напряжение
    • Идеи и технологии будущего
    • Справочная радиоэлементов
    • Литература
    • Разное
  • Аудио
    • FAQ, Технологии и компоненты
    • Для начинающих
    • Источники звука
    • Предусилители, темброблоки, фильтры
    • Питание аудио аппаратуры
    • Усилители мощности
    • Акустические системы
    • Авто-аудио
    • Ламповая техника
    • Гитарное оборудование
    • Прочее
  • Микроконтроллеры
    • МК для начинающих
    • AVR
    • PIC
    • STM32
    • Arduino и Raspberry Pi
    • ПЛИС
    • Другие микроконтроллеры и семейства
    • Алгоритмы
    • Программаторы и отладочные модули
    • Периферия и внешние устройства
    • Разное
  • Товары и услуги
    • Коммерческие предложения
    • Продам-Отдам, Услуги
    • Куплю
    • Уголок потребителя
    • Вакансии и разовая работа
    • Наши обзоры и тесты
  • Разное
    • Конкурсы сайта с призами
    • Сайт Паяльник и форум
    • Курилка
    • Технический английский (English)
    • Наши проекты для Android и Web
    • FAQ (Архив)
    • Личные блоги
    • Корзина
    • Вопросы с VK
  • ATX->ЛБП Переделки
  • Юмор в youtube Киловольты юмора
  • Надежность и группы продавцов Радиолюбительская доска объявлений exDIY
  • разные темы Переделки

Блоги

Нет результатов для отображения.

Нет результатов для отображения.

Местоположения

  • Пользователи форума

Группа


ICQ


Skype


Интересы


Город


Сфера радиоэлектроники


Оборудование

Найдено 16 результатов

  1. Энкодер RGB лента

    я новичок Arduino, помогите написать скетч для управления RGB лентой (общий анод) с помощью энкодера (все мои попытки провалились ибо нет опыта роботы из Arduino ). Фишка в том что бы при повороте енкодера по часовой стрелке менялся цвет за формулой : Формула R-G-B начнем с красного цвета 255-0-0. 1) Наращивается зеленый цвет 255-1-0, 255-2-0 ... 255-255-0. 2) Уменьшается красный цвет 254-255-0, 253-255-0 ... 0-255-0. 3) Наращивается синий цвет 0-255-1, 0-255-2 ... 0-255-255. 4) Уменьшается зеленый цвет 0-254-255, 0-253-255 ... 0-0-255. 5) Наращивается красный цвет 1-0-255, 2-0-255 ... 255-0-255. 6) Уменьшается синий цвет 255-0-254, 255-0-253 ... 255-0-0. а вращение в обратную сторону приводило к обратному процесса с того места где остановились. (фактические это выбор цвета из не непрерывного спектра). ещё использован енкодер со встроенной кнопкой при нажатии кнопки загоралса белый цвет (то есть все цвета на максимум), при повторном нажатии на кнопку лента выключалась. ещё при подачи питания лента была выключена (но это не обязательно, это для того, чтобы случайный скачок напряжения в доме не включил подсветку) (хочу повторить как на видео ток под ардуино, в видео еще использован пульт но я думаю это слишком жырно такое просить) Movie.WMV
  2. Проблема с состовлением прошивки для энкодера (фирмы PEPPERL+FUCHS по данной программе выдает примерно 330-340 импульсов на оборот) линии данных подключил на int0 и int1 atmega8 прошивку пишe в codevision avr Включил прерывания int0 и int1 по любому изменению состояния и повешал на оба прерывания функцию обработки void enkoder(){ if((PIND.2==0)&&(PIND.3==0)){input = 0; }else if((PIND.2==1)&&(PIND.3==0)){input = 1; }else if((PIND.2==1)&&(PIND.3==1)){input = 2; }else if((PIND.2==0)&&(PIND.3==1)){input = 3; }; if(input!=buf){ switch(buf) { case 0:{ if(input == 1) impuls++; if(input == 3) impuls--; break; }case 1:{ if(input == 2) impuls++; if(input == 0) impuls--; break; }case 2:{ if(input == 3) impuls++; if(input == 1) impuls--; break; }case 3:{ if(input == 0) impuls++; if(input == 2) impuls--; break; }; buf = input; }; }; ugol=impuls; }; после того как вращаю энкодер и возвращаю его в обратное положение значение переменной impuls неправельное оно всегда больше 0 и с каждым вращением погрешность все больше подскажите что я делаю нетак.
  3. Необходимо сделать рисунок или гравировку на полированном диске из нержавейки или алюминии с центральным отверстием по данному чертежу. Толщина диска 0,3 - 0,5 мм. 120 чёрных и 120 зеркальных секторов. Точность отношения черного сектор к зеркальному 0,95 - 1,05. На сегодня необходимо 20 шт. все размеры в мм
  4. С помощью энкодера удобно производить регулировку параметров цифровых электроприборов. В этом видеоролике описан принцип работы икрементального энкодера и предложены варианты программной обработки данных от энкодера с помощью Arduino. Arduino UNO урок 6 - Энкодер (код не всегда работает хорошо) Скетчи: Немного изменённый код с сайта (вместо яркости число): enc0.ino Код для плавного энкодера от муз. центра: enc1.ino Код для энкодера с дискретными углами поворота: enc2.ino
  5. Приветствую всех! Подскажите пожалуйста, как на принципиальных схема правильно изображается инкрементальный энкодер, который кроме поворота, ещё имеет функцию нажатия на управляющий вал., то есть кнопку. В интернете исчерпывающего ответа найти не сумел, просьба не отправлять.
  6. Добрый вечер, помогите разобраться с кодом. Делаю термометр, с возможностью, выставления температуры срабатывания рэлле с помощью энкодера. Проблемы следующие. Не срабатывает реле, и отклик на энкодер идет слишком долго. То есть пару раз провернешь и только потом переменная увеличивается. По отдельности проекты работали. Общий код: #include <mega8.h> int NewState,OldState,upState,Temp,downState,count_1; // unsigned char trig; float temper; #asm .equ __lcd_port=0x12 ;PORTD #endasm #include <lcd.h> #include <stdio.h> #include <delay.h> // 1 Wire Bus functions #asm .equ __w1_port=0x18 ;PORTB .equ __w1_bit=2 #endasm #include <1wire.h> #include <ds18b20.h> #pragma warn- /* eeprom */ eeprom int temp_eep; #pragma warn+ interrupt [TIM1_COMPA] void timer1_compa_isr(void) { NewState=PINB & 0b00000011; if(NewState!=OldState) { switch(OldState) { case 2: { if(NewState == 3) upState++; if(NewState == 0) downState++; break; } case 0: { if(NewState == 2) upState++; if(NewState == 1) downState++; break; } case 1: { if(NewState == 0) upState++; if(NewState == 3) downState++; break; } case 3: { if(NewState == 1) upState++; if(NewState == 2) downState++; break; } } OldState=NewState; } if(trig==1) // если флаг активен { if(OldState==NewState) // если энкодер в покое то увеличиваем счетчик {count_1++; if(count_1==5000) // если счетчик дотикал до 5 секунд {temp_eep=Temp; // пишем данные в еепром count_1=0; //обнуляем счетчик trig=0; // обнуляем флаг } } } TCNT1H=0x00; TCNT1L=0x00; } void main(void) { char lcd_buf[17]; char lcd_buf2[17]; // Input/Output Ports initialization // Port B initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=P State0=P PORTB=0x03; DDRB=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: 1000,000 kHz // Mode: CTC top=OCR1A // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off // Input Capture on Falling Edge // Timer 1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: On // Compare B Match Interrupt: Off TCCR1A=0x00; TCCR1B=0x0A; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x03; OCR1AL=0xE8; OCR1BH=0x00; OCR1BL=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x10; // Global enable interrupts #asm("sei") lcd_init(16); w1_init(); ds18b20_init(0,-20,50,DS18B20_12BIT_RES); Temp=temp_eep; //Выгружаем данные из памяти while (1) { if (upState >= 4) { Temp++; upState = 0; trig=1; // ставим флаг } if (downState >= 4) { Temp--; downState = 0; trig=1; // ставим флаг } temper=ds18b20_temperature(0); if (temper<=Temp) {PINC.1=1;} else {PINC.1=0;} sprintf(lcd_buf,"t=%.1f\xdf""C",temper); ////0b 99 sprintf(lcd_buf2,"Temp=%d\xdf""C",Temp); lcd_clear(); lcd_gotoxy(0,0); lcd_puts(lcd_buf); lcd_gotoxy(0,1); lcd_puts(lcd_buf2); delay_ms(10); }; } Проект термометра: #include <mega8.h> #include <delay.h> // 1 Wire Bus functions #asm .equ __w1_port=0x18 ;PORTB .equ __w1_bit=2 #endasm #include <1wire.h> #include <ds18b20.h> // Alphanumeric LCD Module functions #asm .equ __lcd_port=0x12 ;PORTD #endasm #include <lcd.h> #include <stdio.h> char lcd_buf[17]; void main(void) { float temper; lcd_init(16); w1_init(); ds18b20_init(0,-20,50,DS18B20_12BIT_RES); while(1) { temper=ds18b20_temperature(0); sprintf(lcd_buf,"t=%.1f\xdfC",temper); lcd_clear(); lcd_puts(lcd_buf); if (temper<=18) {PINC.1=1;} delay_ms(1500); }; } При сравнении переменных temper<=temp ничего не происходит. пробовал Temp заменить числом как во втором примере, тоже ноль реакции. Второй пример работает. Компилятор ошибок не выдает. Пишу в CV AVR. Схема собрана в железе.
  7. новый 0536147 ENCODER RI58TD/720AD. 32TF-F0 инкрементальный энкодер С Кабелем 4500 руб.
  8. Энкодер Hengstler Ri58TD/720ED.32KF-F0 0536632 ENCODER RI58TD/720ED.32KF-F0 7000 руб./шт. новые с хранения
  9. Позиции на продажу, с качественными фото по этой позиции 1. Энкодер инкрементальный Hengstler 0536147 RI58TD/720AD.32TF-F0 5 шт. новые с хранения 2. Индуктивный датчик bi15-ck40-liu-h1141 новые с хранения , 5 шт. Индуктивный датчик Turck BI15-CK40-LIU-H1141 с аналоговым выходом прямоугольный, высота 40 мм изменение ориентации активной поверхности в 5 направлениях пластмасса, PBT-GF30-V0 4-проводн. DC, 15Е30 В DC аналоговый выход 0Е10 В и 0Е20 мА разъем M12 x 1 3. Реле RP 81 PC 24V 3P Чехия ZPA 2 шт. новые с хранения Реле RP 81 PC 24V 3P Чехия ZPA 4. РЕЛЕ R4N-2014-23-1024WT 4 шт в наличии новые Реле общего применения - для коммутации и "размножения" контактов. Описание: Для монтажа в контактную колодку. Четыре переключающих контакта. Долговременная токовая нагрузка контакта: 7A. Материал контактов AgNi. Напряжение катушки 24V DC. Механический индикатор срабатывания. Фронтальная тест-кнопка с блокировкой. Без светодиодного индикатора. Корпус IP 40. Характеристики Напряжение питания: 24V DC Коммутируемый ток(A): 4х7 Количество и тип контактов: 4P Гарантия 12 месяцев Производитель Relpol Диапазон рабочих температур(С°): -25...+50 Способ монтажа: На плату / В колодку Габариты(мм): 21x36x28 Степень защиты: IP40 Вес(г): 35 5. Серводвигатель Lenze мса14L35 3.9 kW новый 1 шт 3455 об/мин 3,9 кВт MCA 14L35-RS0B0-A24R-ST5F10N-RSM 6.. Пускатель АС3/10-500v-100А 3 шт. новые с хранения Корпус, в котором размещена неподвижная часть электромагнита с втягивающей катушкой и неподвижные контакты главной цепи с клеммными выводами и дугогасительным рогом. На корпусе Пускателя закреплены также клеммные выводы катушки электромагнита 7. Контактор (магнитный пускатель) Telemecanique TeSys LP4K0610BW3 на токи до 6 А по AC-3 от Schneider Electric фото по ссылке 4 шт. новые 8. Фитинги, нержавейка , не знаю куда девать , новые Большая часть производитель ABAC оригинальные Т-образное соединение с тремя гайками 1/4" 9045456 Байонетное соединение для шланга ( елочка ) 8мм 9045440 Байонетное соединение "папа" с наружной резьбой 1/4 (756108) Переходник для шланга(елочка) с наружной резьбой1/4"
  10. Предлагаю схему простой цифровой шкалы для работы с энкодером. Плюсы- минимум запчастей, минусы- малое число разрядов. Запчасти- мк atmega8, кварц 12 мгц, семисегментные индикаторы (5 шт), uln2003, lm317, пара сопротивлений, транзистор, реле. Печатная плата не изготовлялась (макетка). Принцип работы- подсчет числа импульсов с энкодера, деление их на заданное число и в зависимости от числа в озу включение-выключение нагрузки (предполагается установка на малый токарный станок). Максимальное число импульсов- 65535 (два байта). Подсчет импульсов работает по прерываниям всегда, (поэтому нет прерывания на таймера дли индикации) кроме записи-чтения из пзу. Если по каким либо условиям мк "обнаружит" неправильное чередование фаз (неконтакт, высокая скорость оборотов) то на индикаторах высветится "Err" но как только будет нормальное чередование подсчет будет продолжаться. Установлено три кнопки и один тумблер. Тумблер переключает на индикатор импульсы или импульсы деленные на число (без остатка). Кнопка "очистка"- она же "-" очищает счетчик, кнопка "память"- она же "+"- запоминает число импульсов в ОЗУ и включает реле от 0 до этого числа, если не нужно реле то при включении очистить счетчик и нажать "память" (тогда реле не будет работать). Кнопка "делитель"-она же "запомнить"- для изменения делителя ( до 255-один байт). Для установки точки- нажать "делитель" и не отпуская нажать "очистка"- после установки нажать "делитель". В архиве файл прошивки hex, файл протеуса для моделирования, файл протеуса со схемой по которой собирался макет. Проект "сырой" но вполне работоспособный (проверяли на винте станка). В будущем будет плата и увеличено количество разрядов. Файл aws не выложил (написано на asm) но если кому надо (хотя большинство читающих сами легко напишут) вышлю (не выложил из-за "нерасчесанности" и критики). Фото "макетки" ниже. PS не знаю как переместить изображение в спойлер a.zip
  11. Привет всем! В общем замыслил пересветить приборку и климат RGB диодами. Пожалуйста ткните носом в рабочий проект, сам выдумать не смогу, так как отсутствуют требуемые знания! Требуется двухканальный rgb контроллер с управлением энкодером, с регулировкой цвета обоих каналов и их яркости, с запоминанием последних цветов и плавным розжигом/угасанием. Один канал на стрелки, второй на шкалы и климат. Хочется управление по проще, типа такого: нажатием кнопки энкодера переключаем канал, для регулировки яркости или цвета, вращением производим сами регулировки… Заранее всем спасибо!
  12. В наличии: AD9952 - 250 грн/шт AD9850 - 50 грн/шт AD8310 - 70 грн/шт AD8361 - 50 грн/шт AD8009 - 22 грн/шт Кварцевый генератор 125 МГц (для AD9850) - 20 грн/шт FM25L16B - 12 грн/шт ATMEGA32A-AU - 20 грн/шт BFG591 - 7 грн/шт RD16HHF1 - 45 грн/шт BFR93A - 7грн/10шт LA1185 - 15 грн/шт FT232RL - 32 грн/шт Оптический энкодер Bourns ENS1J 128 имульсов на оборот - 250 грн/шт В пути: AD9834 - 60 грн/шт ADG774 - 25 грн/шт Харьков, Украина. Отправлю по Украине Новой почтой или Укрпочтой. В ближнее зарубежье отправить - не проблема.
  13. Доброго времени суток. Появилась необходимость использовать 4 инкрементальных энкодера. Вопрос встал в обработке всего этого дела. При 1 или 2 все делается довольно просто на внешних прерываниях. Но вот с четыремя сложновато. Была мысль сделать все на прерываниях по изменению состояния выводов (PCINT), но чувствуется будет это все нестабильно работать. Может спецы подскажут способ? Скорее всего придется делать сканирование по прерыванию таймера и сравнивать состояния. Желательно на АСМе)))
  14. Здравствуйте, делаю устройство для ЧПУ станка, помогите пожалуйста подобрать модуль АЦП. Входной сигнал идёт с ОУ, могу настроить его на любую амплитуду, изначальный сигнал (до ОУ) это синус с амплитудой 1В, и максимальной частотой 20кГц, передаётся по дифф. паре поэтому стоит ОУ. Нужно оцифровывать сигнал с эффективным разрешением 8бит, можно до 12. передача результатов оцифровки по i2c/spi/пареллельная... Скорость оцифровки от 20 миллионов выборок. Источник опорного напряжения - любой. Источник частоты АЦП - любой. Питание в пределах 3.3В. Корпус - любой. Пока что смотрю в сторону AD9200JRSZ с тактированием от ПЛИС (которая тактируется от FXO-HC536R-60) в которой будут данные обрабатываться, и питанием от внутреннего ИОНа включенного на 2В, соответственно входной ОУ будет иметь такие резисторы чтобы в 2 раза увеличивать амплитуду входного сигнала. Можете посоветовать аналоги АЦП? В ПЛИС есть ФАПЧ, планирую генерировать 20МГц для АЦП, но в даташитах к ним советуют точные источники частоты использовать, вопрос насколько сигнал с ФАПЧ ПЛИСины будет сказываться на повторяемости измерений? Что можно улучшить если использовать внешний ИОН и отдельный источник частоты для АЦП (всмысле нужно ли это для моего случая с низкой частотой входного сигнала)?
  15. приветствую всех! для самоделки надо 2 энкодера с минимальным дребезгом я купил на рынке пару, но если быстро вращать, то на осциллографе видно, как хаотично замыкаются\размыкаются контакты пробовал победить эту проблему и конденсаторами, и программно - всё равно изврат при быстром вращении Может кто подскажет модель или где прикупить несколько штук нормального качества?
  16. Не Работает Энкодер На Контроллере

    Доброго времени суток! Я делаю контроллер для электротонировки, не работает энкодер. Или выставляет прозрачность на максимум, или ничего не меняет. Пробовал разные энкодеры, всё равно не работает. С пульта прозрачность отлично меняется. В чём может быть проблема? Который день бьюсь... (в архиве есть файл прошивки, исходник и модель Proteus). Во втором архиве - библиотека энкодера. ROTENC.rar Контроллер.zip