Большие и маленькие полезные приспособления.

Якщо бажаєш зробити щось добре, - зроби це сам!

Модератори: oberig, Сулейман

Аватар користувача
Сулейман
Rescue Ranger
Rescue Ranger
Повідомлень: 8019
З нами з: 25 листопада 2012, 12:22
Звідки: 48°16'N 26°00'E
Дякував (ла): 167 разів
Подякували: 240 разів
Контактна інформація:

Re: Большие и маленькие полезные приспособления.

Повідомлення Сулейман » 27 травня 2019, 00:42

Делитель частоты инкрементального энкодера.

Понадобилось мне согласовать контроллер DVP20SX211 с частотником 45P5GSL
IMG_20190406_095222.jpg
Как оказалось производитель китай. Вышел прямо на производителя, но засада то, документации на него даже у самого производителя не оказалось )))
Мол модель старая (2013г.) , максимум чем могут помочь, это продать новый )))

Немного всеже пролили свет, скинув мануал от похожих частотников.

Дальнейшее изучение выявило отсутствие возможности командовать частотником по модбасу.

Но благо на разьеме есть выход энкодера обратной связи, с максимальной частотой на выходе 20кГц.

Контроллер DVP20SX211 такую частоту не способен считать.
Пришлось немного химичить.

Вышел такой вот делитель выхода энкодера по одному из каналов, в данном случае А.
IMG_20190526_225103.jpg
IMG_20190526_225052.jpg
Что на входе и выходе:

IMG_000.jpg
IMG_000.jpg (38.87 Кіб) Переглянуто 2324 разів
Плата собрана на attiny13 , с написанием пары строк
.DSEG ; Сегмент ОЗУ
.CSEG
.org 0 ;Задание нулевого адреса старта программы
rjmp reset ;Безусловный переход к метке reset
.org 1
rjmp Prer
.org 2
reti ;Pin Change Interrupt0
.org 3
reti ;timer0_ovf
.org 4
reti ;EEPROM write complete
.org 5
reti ;Analog Comparator Interrupt
.org 6
reti ;timerA;Timer_Counter0A; Compare Match A
.org 7
reti ;Timer_Counter0B; Compare Match B
.org 8
reti ;Watchdog Timeout
.org 9
reti ;conversion;ADC Conversion Complete Handle
reset:

wdr; Reset Watchdog Timer
;ldi r16,24
;out WDTCR, r16;
;ldi r16,12
;out WDTCR, r16;
LDI ZL,Low(SRAM_START) ; Адрес начала ОЗУ в индекс
LDI ZH,High(SRAM_START)
CLR R16 ; Очищаем R16
Flush: ST Z+,R16 ; Сохраняем 0 в ячейку памяти
CPI ZH,High(RAMEND+1) ; Достигли конца оперативки?
BRNE Flush ; Нет? Крутимся дальше!
CPI ZL,Low(RAMEND+1) ; А младший байт достиг конца?
BRNE Flush
CLR ZL ; Очищаем индекс
CLR ZH
LDI ZL, 30 ; Адрес самого старшего регистра
CLR ZH ; А тут у нас будет ноль
DEC ZL ; Уменьшая адрес
ST Z, ZH ; Записываем в регистр 0
BRNE PC-2 ; Пока не перебрали все не успокоились
ldi r16, RAMEND ;Загрузка в регистр r16 адреса верхней границы ОЗУ
out SPL, r16

sbi DDRB, 4
sbi PORTB, 1
ldi r16,3
out MCUCR,r16 ;
ldi r16,(1<<INT0);
out GIMSK, r16 ;
ldi r16,(1<<6)
out GIFR,r16
sei
main:




rjmp main
Prer:
sbis PINB,1
rjmp Prer1
sbis PINB,1
rjmp Prer1
sbis PINB,1
rjmp Prer1
sbis PINB,1
rjmp Prer1
sbis PINB,1
rjmp Prer1

inc r16 ; Увеличить на 1 r16
cpi r16,10 ; Делитель времени
brlo Prer1

clr r16 ; Очистить r18

sbis PINB,4
rjmp Prer2
cbi PORTB,4 ; Очистить бит в i/o
rjmp Prer1
Prer2:
sbi PORTB,4 ; Установить бит i/o


Prer1:
reti
Дальше сигнал улетает в DVP20SX211 и уже от туда задается скорость частотника аналоговым уровнем.

Аватар користувача
TAZIT
Доцент
Повідомлень: 9494
З нами з: 27 листопада 2012, 23:42
Звідки: CV.UA
Дякував (ла): 3508 разів
Подякували: 608 разів
Контактна інформація:

Re: Большие и маленькие полезные приспособления.

Повідомлення TAZIT » 28 травня 2019, 07:56

Сулейман писав:
27 травня 2019, 00:42
Делитель частоты инкрементального энкодера.
Понадобилось мне согласовать контроллер DVP20SX211 с частотником 45P5GSL
IMG_20190406_095222.jpg
Как оказалось производитель китай. Вышел прямо на производителя, но засада то, документации на него даже у самого производителя не оказалось )))
Мол модель старая (2013г.) , максимум чем могут помочь, это продать новый )))
Немного всеже пролили свет, скинув мануал от похожих частотников.
Дальнейшее изучение выявило отсутствие возможности командовать частотником по модбасу.
Но благо на разьеме есть выход энкодера обратной связи, с максимальной частотой на выходе 20кГц.
Контроллер DVP20SX211 такую частоту не способен считать.
Пришлось немного химичить.
Вышел такой вот делитель выхода энкодера по одному из каналов, в данном случае А.
IMG_20190526_225103.jpg
IMG_20190526_225052.jpg
Что на входе и выходе:
IMG_000.jpg
Плата собрана на attiny13 , с написанием пары строк
.DSEG ; Сегмент ОЗУ
.CSEG
.org 0 ;Задание нулевого адреса старта программы
rjmp reset ;Безусловный переход к метке reset
.org 1
rjmp Prer
.org 2
reti ;Pin Change Interrupt0
.org 3
reti ;timer0_ovf
.org 4
reti ;EEPROM write complete
.org 5
reti ;Analog Comparator Interrupt
.org 6
reti ;timerA;Timer_Counter0A; Compare Match A
.org 7
reti ;Timer_Counter0B; Compare Match B
.org 8
reti ;Watchdog Timeout
.org 9
reti ;conversion;ADC Conversion Complete Handle
reset:

wdr; Reset Watchdog Timer
;ldi r16,24
;out WDTCR, r16;
;ldi r16,12
;out WDTCR, r16;
LDI ZL,Low(SRAM_START) ; Адрес начала ОЗУ в индекс
LDI ZH,High(SRAM_START)
CLR R16 ; Очищаем R16
Flush: ST Z+,R16 ; Сохраняем 0 в ячейку памяти
CPI ZH,High(RAMEND+1) ; Достигли конца оперативки?
BRNE Flush ; Нет? Крутимся дальше!
CPI ZL,Low(RAMEND+1) ; А младший байт достиг конца?
BRNE Flush
CLR ZL ; Очищаем индекс
CLR ZH
LDI ZL, 30 ; Адрес самого старшего регистра
CLR ZH ; А тут у нас будет ноль
DEC ZL ; Уменьшая адрес
ST Z, ZH ; Записываем в регистр 0
BRNE PC-2 ; Пока не перебрали все не успокоились
ldi r16, RAMEND ;Загрузка в регистр r16 адреса верхней границы ОЗУ
out SPL, r16

sbi DDRB, 4
sbi PORTB, 1
ldi r16,3
out MCUCR,r16 ;
ldi r16,(1<<INT0);
out GIMSK, r16 ;
ldi r16,(1<<6)
out GIFR,r16
sei
main:




rjmp main
Prer:
sbis PINB,1
rjmp Prer1
sbis PINB,1
rjmp Prer1
sbis PINB,1
rjmp Prer1
sbis PINB,1
rjmp Prer1
sbis PINB,1
rjmp Prer1

inc r16 ; Увеличить на 1 r16
cpi r16,10 ; Делитель времени
brlo Prer1

clr r16 ; Очистить r18

sbis PINB,4
rjmp Prer2
cbi PORTB,4 ; Очистить бит в i/o
rjmp Prer1
Prer2:
sbi PORTB,4 ; Установить бит i/o


Prer1:
reti
Дальше сигнал улетает в DVP20SX211 и уже от туда задается скорость частотника аналоговым уровнем.

Для лучшей корректности лучше инвертировать выходной сигнал либо сделать счёт от фронта , а не по спаду ... .
Хотя я подозреваю что сам сигнал используется чисто для индикации , а не в петле регулирования ... и это может быть не столь важно ... .
Усл.успеха: 10% -- знания; 40% -- стратегия мышления ; 50% -- окружение . Точний час в Україні -- http://time.in.ua !!!
Домик: http://forumcv.com/viewtopic.php?f=64&t=57639 ;-)

Аватар користувача
Сулейман
Rescue Ranger
Rescue Ranger
Повідомлень: 8019
З нами з: 25 листопада 2012, 12:22
Звідки: 48°16'N 26°00'E
Дякував (ла): 167 разів
Подякували: 240 разів
Контактна інформація:

Re: Большие и маленькие полезные приспособления.

Повідомлення Сулейман » 28 травня 2019, 08:56

В схеме подтяжка к +5В, посему на спад.

Инвертировать для чего?

Сам сигнал для корректировки оборотов.

Аватар користувача
Rassel
Експерт
Повідомлень: 7778
З нами з: 25 листопада 2012, 11:49
Дякував (ла): 136 разів
Подякували: 196 разів

Re: Большие и маленькие полезные приспособления.

Повідомлення Rassel » 22 червня 2019, 22:49

В жизни нет понятия совпадение, во всем есть причина

Hunter
Забанен навсегда
Повідомлень: 621
З нами з: 23 березня 2018, 08:37
Дякував (ла): 25 разів
Подякували: 66 разів

Re: Большие и маленькие полезные приспособления.

Повідомлення Hunter » 06 липня 2019, 13:05

Скриншот 06-07-2019 130414.jpg

Аватар користувача
Master
Легенда Форуму
Повідомлень: 25200
З нами з: 25 листопада 2012, 13:03
Звідки: Город Герой Черновцы
Дякував (ла): 1734 рази
Подякували: 2169 разів

Re: Большие и маленькие полезные приспособления.

Повідомлення Master » 20 січня 2020, 16:17

Все, что вы видите во мне - это не мое, это ваше.
Мое - это то, что я вижу в вас. ©

Аватар користувача
Master
Легенда Форуму
Повідомлень: 25200
З нами з: 25 листопада 2012, 13:03
Звідки: Город Герой Черновцы
Дякував (ла): 1734 рази
Подякували: 2169 разів

Re: Большие и маленькие полезные приспособления.

Повідомлення Master » 21 липня 2021, 15:38

кто то пробовал??
:-D
Вкладення
E6wlqp8WYAMUTq8.jpg
Все, что вы видите во мне - это не мое, это ваше.
Мое - это то, что я вижу в вас. ©

Аватар користувача
KVadik
Експерт
Повідомлень: 7915
З нами з: 03 травня 2013, 10:35
Дякував (ла): 850 разів
Подякували: 1084 рази
Контактна інформація:

Re: Большие и маленькие полезные приспособления.

Повідомлення KVadik » 21 липня 2021, 15:42

Master писав:
21 липня 2021, 15:38
кто то пробовал??
:-D
Высылай Матвееву, точнее его альтер эго - Доктору Дью. :-D
˙иʞuɐv ʁнǝw ʎ ɐ
‘˙˙˙ʁɔvʎнdǝвǝdǝu dиw – ɐwʎ ɔ vǝmоɔ dиw

Відповісти

Повернутись до “Зроби сам”