Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Relejni atenuator
#41
Gde su ti snaber diode preko špulni relea?
Zašto imaš LEDare na red sa špulnama? Uf LEDara oko 2V, pad napona na ULN oko 1.1V, na špulni oko 8.9V
Make no mistake between my personality and my attitude.
My personality is who I am.
My attitude depends on who you are.

塞爾維亞文
Reply
#42
Snaber diode su u ULN2004, biće tu više od 12 V nestabilisanih.Led diode su tu po
Mikijevoj želji da bi se pratio ciklus preklopa .Neće još biti finalne šeme dok to ne proradi na keca.Ima tu puno želja za dodavanjem još koje čega ali to otom potom prvo ovo da proradi.
Reply
#43
LED (1-2mA) treba da preko otpornika ide direktno na izlaz i prema GND, mislio sam da je ULN2004 sa Bipolarnim ulazom a ustvari je Darlgton pa moja ideja da ide redno sa bazom ne pije vodu za 3V3, za 5V bi radila ...

Uzgred proradio mi je i ENCODER sa HW QEI interfejsom.
Bez ikakvog R/C filtera ovaj crni na plocici radi savrseno, svaki "klik" lepo detektuje, ima specialan registar/flagovi za interni HW filter "TIM_CCMR1_IC1F_3" u "TIM2->CCMR1" ...
E ali ovaj drugi zeleni brljavi, moracu za njega da probam sa dodatnim R/C filterom ...

BTW: Displey se updejtuje sa cca 200 frejmova u sekundi (FPS), moooogo lepo radi ... zato SPI a ne I2C Wink

[Image: attachment.php?aid=35757]


Attached Files Thumbnail(s)

Reply
#44
Evo malo i pogled "iznutra" u source-code, dotle sam stigao, to je code koji radi ovaj primer sa enkoderom i brojacem, ima tu jos malo da se dokucka logika oko releja i da napravim neki "menu" za podesavanje ... 

[Image: attachment.php?aid=35758]


Attached Files Thumbnail(s)

Reply
#45
kako to lako izgleda kad neko drugi (ko zna) radi... 😀
"Претпоставка је мајка зајеба..." : Д.В. - Дуд
🇷🇸 🇷🇸 🇷🇸
"Pretpostavka je majka zajeba..." : D.V. - Dude
Reply
#46
(04-27-2021, 11:24 AM)mikikg Wrote: E ali ovaj drugi zeleni brljavi, moracu za njega da probam sa dodatnim R/C filterom ...

Taj drugi enkoder je debilno napravljen a QEI radi super, pravi 2 impulsa (umeasto 1) za svaki mehanicki korak, onaj crni pravi jedan impuls/korak ovaj pravi dva, koji je to mozak smislio za mehanicki enkoder nije mi jasno, ima medju korak fizicki unutra u kontaktimra, cemu to sluzi osim da pravi probleme?

Imam ovde neki kineski opticki enkoder od 200 podela po krugu, mislim da je jeftiniji od pismenog potenciometra a sa mehanickim enkoderima necu da poredim, "opticki enkoder", maaaa ... To dok ne uzmetu u ruku i okrecete i gledate na displeju sa 60+ FPS ne mozete da osetike kako to dobro radi ... Toliko dobro radi da na primer ne izgubi ni jedan impuls od milion impulsa!
Reply
#47
Taj zeleni je i meni pravio 2 koraka na STM32 a mrzelo me da trazim zasto. Test je bio na onom Pejčićevom mikroampermetru.
Probao sam ga na PIC16 i radi OK ali tu je vezan na CLC.
Reply
#48
Ima druga mnogo bolja varijanta za enkodere ...

Magnetni enkoderi, milina, to treba svuda da stave i da se ratosiljaju vise svih mehanickih a i optickih enkodera!

https://ams.com/position-sensors

Pismeniju stvar nisu mogli da izmisle Smile
Jos to lepo da razrade i za vece rezolucije/brzine i to je resenje koje ce stvarno da zameni oba predhodna tipova enkodera u buducnosti.
Vec im to radi lepo i koriste za sve i svasta, ima samokalibraciju, razni interfejsi, razne razolucije itd ... jedan IC i jedan magnet na osovini dugmeta za kontrolu.
Reply
#49
Preskupo je to za enkoder na korisničkom interfejsu. U druge svrhe je odlična varijanta.
Reply
#50
Ima i tih zelenih "Alps" raznih.Meni recimo sa 16f627  radi bez filtera dok 
sa filterom neće nikako a 16f88 obrnuto,
nije hteo bez filtera.
Reply
#51
Radio malo na UI ...

[Image: attachment.php?aid=35764] [Image: attachment.php?aid=35765]


Attached Files Thumbnail(s)

Reply
#52
(04-27-2021, 07:07 PM)gorankg Wrote: Taj zeleni je i meni pravio 2 koraka na STM32 a mrzelo me da trazim zasto. Test je bio na onom Pejčićevom mikroampermetru.
Probao sam ga na PIC16 i radi OK ali tu je vezan na CLC.

Ako se dobro sećam na mikroAMPmetru sam radio enkoder softverskim rutinama nisam koristio QEI interfejs, samo iz razloga jer je tada kod portabilniji. Radio je lepo zeleni enkoder iz Cometa-a.
QEI sam koristio samo za prave enkodere za merenje dužine neke letve i položaj, odnosno ugao jer je tu bilo ihhhhaha impulsa pa sam to "uterivao" u 32bitni timer i to radi odlično.
Mislim da u sklopu QEI hardvera ima nekih filtera koje možete da podešavate, time i rešite preskakanje enkodera...

Ovo je na TIM2 kod STM32L073RC, probati sa ovim parametrima IC1Filter
  sConfig.EncoderMode = TIM_ENCODERMODE_TI1;
  sConfig.IC1Polarity = TIM_ICPOLARITY_RISING;
  sConfig.IC1Selection = TIM_ICSELECTION_DIRECTTI;
  sConfig.IC1Prescaler = TIM_ICPSC_DIV4;
  sConfig.IC1Filter = 0x0F;

  sConfig.IC2Polarity = TIM_ICPOLARITY_FALLING;
  sConfig.IC2Selection = TIM_ICSELECTION_DIRECTTI;
  sConfig.IC2Prescaler = TIM_ICPSC_DIV4;
  sConfig.IC2Filter = 0x0F;
Reply
#53
Igrao sam se sa tim filterima ali ništa nije dalo rezultat. Krene lepo da broji po jedan a onda ubaci dva i tako nastavi... onda opet po jedan...
Digao sam ruke od toga i otišao u drugom smeru.
Reply
#54
(04-27-2021, 07:18 PM)mikikg Wrote: Ima druga mnogo bolja varijanta za enkodere ...

Magnetni enkoderi, milina, to treba svuda da stave i da se ratosiljaju vise svih mehanickih a i optickih enkodera!

https://ams.com/position-sensors

Pismeniju stvar nisu mogli da izmisle Smile
Jos to lepo da razrade i za vece rezolucije/brzine i to je resenje koje ce stvarno da zameni oba predhodna tipova enkodera u buducnosti.
Vec im to radi lepo i koriste za sve i svasta, ima samokalibraciju, razni interfejsi, razne razolucije itd ... jedan IC i jedan magnet na osovini dugmeta za kontrolu.

He he... Smile
Ja sam pre koju godinu radio na tim integrisanim Hall senzorima za AMS, oni su jedini koji su ih u to vreme imali... Ovaj "analog front-end"...
Interesantni su ti integrisani planarni hall senzori, gomila metala koja je raspoređena reklo bi se nasumično, ne zadovoljava nikakva DRC pravila pri fabrikaciji, ali je to neki fizički elektroničar napravio, i to radi... Smile Kako... Nema teorije da elektroničar može bilo šta iz toga da zaključi... Pasivna struktura u 5-6 metalnih slojeva bez ikakvog reda...
Reply
#55
(04-28-2021, 03:03 PM)npejcic Wrote:
(04-27-2021, 07:07 PM)gorankg Wrote: Taj zeleni je i meni pravio 2 koraka na STM32 a mrzelo me da trazim zasto. Test je bio na onom Pejčićevom mikroampermetru.
Probao sam ga na PIC16 i radi OK ali tu je vezan na CLC.

Ako se dobro sećam na mikroAMPmetru sam radio enkoder softverskim rutinama nisam koristio QEI interfejs, samo iz razloga jer je tada kod portabilniji. Radio je lepo zeleni enkoder iz Cometa-a.
QEI sam koristio samo za prave enkodere za merenje dužine neke letve i položaj, odnosno ugao jer je tu bilo ihhhhaha impulsa pa sam to "uterivao" u 32bitni timer i to radi odlično.
Mislim da u sklopu QEI hardvera ima nekih filtera koje možete da podešavate, time i rešite preskakanje enkodera...

Ovo je na TIM2 kod STM32L073RC, probati sa ovim parametrima IC1Filter
  sConfig.EncoderMode = TIM_ENCODERMODE_TI1;
  sConfig.IC1Polarity = TIM_ICPOLARITY_RISING;
  sConfig.IC1Selection = TIM_ICSELECTION_DIRECTTI;
  sConfig.IC1Prescaler = TIM_ICPSC_DIV4;
  sConfig.IC1Filter = 0x0F;

  sConfig.IC2Polarity = TIM_ICPOLARITY_FALLING;
  sConfig.IC2Selection = TIM_ICSELECTION_DIRECTTI;
  sConfig.IC2Prescaler = TIM_ICPSC_DIV4;
  sConfig.IC2Filter = 0x0F;

Kada se ukljuci filter onda zeleni mnogo lepo radi, bez filtera nece da radi uopste, dakle radi ali pravi dva impulsta i ne moze da se iskonfigurise na HW nivou da pravi jedan, ni preskaler, ni drugi mode, u kvadraturnom modu tek odlepi ... Smile

Code:
    //konfiguracija za TIM2 kao enkoder
    //TIM2->ARR     = 250; //auto reload vrednost
    TIM2->PSC     = 0; //preskaler
    TIM2->EGR     = TIM_EGR_UG; //generisi update event
    TIM2->CNT        = 4064; //set start count (mora posle EGR!)
    TIM2->CCER    = 0; //input capture on rising edge
    TIM2->CCMR1 |= TIM_CCMR1_CC1S_0 | TIM_CCMR1_CC2S_0;//input configuration
    TIM2->CCMR1 |= TIM_CCMR1_IC1F_Msk | TIM_CCMR1_IC2F_Msk;//input MAX FILTER configuration
    TIM2->SMCR     = 2; //Encoder Mode 3, update na obe ivice = 4Q mode
    TIM2->DIER     |= TIM_DIER_UIE; //enable update interupt

    TIM2->SR &=~ TIM_SR_UIF;//clear flag

    //Enable TIM interrupt
    NVIC_EnableIRQ(TIM2_IRQn); //enable channel
    NVIC_SetPriority(TIM2_IRQn, 1); //interupt priority

    //run
    TIM2->CR1        |= TIM_CR1_CEN; //ENABLE tim periferial
Reply
#56
Kao sto sam spomenuo, opticki enkoder ima da se nadje po ceni dobrog "Alps" enkodera, cca 10$ ...

https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=360%2F600P%2FR+Photoelectric+Incremental+Rotary+Encoder+5V-24V+AB+Two+Phases+Shaft&_sacat=0

https://www.ebay.com/sch/i.html?_from=R40&_trksid=p2047675.m570.l1313&_nkw=alps+rotary+encoder&_sacat=0

Jeste veca malo "djunta" ali to radi kao sat, muka mi je od mehanickih enkodera, na Rigol osciloskopu mi pola enkodera brljave, kod Macole isto, zato ih ne volim, jer vrlo brzo pocnu da brljave ma kako god da ga naprave ...

Kod drugara u firmi isto ima neki DAC, sve super lepo odradjeno ALU kuciste i svira lepo ALI poceo da mu brljavi enkoder, umesto da smanjuje pocne da pojacava ... Dakle ako u celoj toj prici samo tu komponentu zabrljas dzaba ovo ostalo sve ...
Reply
#57
Ah kako ovo dobro radi ...
Ovo mi neki opticki enkoder izgleda od 2000 podela po krugu, morao sam da ukljucim preskaler (radi perfektno preskaler) da deli sa jedno 100 tako da sam dobio 20 podela po krugu sto je super-cool uzitak kako radi i kako prebacuje korake ... Smile
Jos i ovo dugme je masivno i dodatno je sve sa lezajevima uradjeno tako da ima "inerciju" i moze da se "zavrti" + da se bira koliko koraka da pravi ... Vrhunski radi ... 

[Image: attachment.php?aid=35783]


Attached Files Thumbnail(s)

Reply
#58
Malo oko ovog preskalera, vrlo bitna stvar je sto je moguce da se izgubi pozicija ako je ukljucen preskaler, postoji specificna tranzicija stanja koja moze da dovede do gubitka koraka u odnosu na absolutno stanje sto je kriticna stvar za neke druge potrebe (za ove nase nije toliko), kada je iskljucen preskaler (0) onda ne moze da izgubi korak, ni u obicnom ni u kvadraturnom modu, to je za neku mehatroniku bitno i zato se biraju tacno potrebni enkoderi sa odgovarajucom rezolucijom po krugu koja se slaze sa delom koji to procesira.

Mozda ovaj STM32F1 na HW nivou tako radi, mozda neki drugi kontroler radi drugacije, nisam to probao ali generalno je problem za mehatroniku, najbolje da bude 1:1 odnos i da se ne koristi preskaler.

Taj TIM2 enkoder sa preskalerom radi vrlo cudno, prvo sto sam testirao je bio histerezis i tu sam ga ustvari uhvatio da radi ne bas savrseno, ako je npr preskaler 100, on mora da odbroji 100 impulsa pa da poveca +1 brojac (ili smanji) ali sta se desava izmedju tih 100 impulsa, tu je problem, mogu da idu tamo-vamo po malo ali on to skonta po neki put pogresno, dobio sam histerezis ali brljavi ...
Bez preskalera ako se u SW deli sa 100, radi "slicno" ali nema histerezis (osim ako ga ne napravim u SW) sto je sad druga stvar koja nije dobra, postoji velika verovatnoca da "proosciluje" izmedju koraka, radi tacno i prati enkoder ali se ovaj mucenik toliko malo pomera i bas se je nasao izmedju koraka da mrda a to je tamo na relejima "pesma za sebe" ... Smile ... Veselo je sa tim enkoderima ...

Oni magnetni enkoderi su apsolutni po konstrukciji i nema nista od ovih gore spomenutih problema ....
Reply
#59
Resio sam hibridno bar za ovaj opticki enkoder da radi kako treba bez problema.
Postavio sam brojac za QEI da bude ustvari 200, to znaci da za 200 koraka (jedna-desetina kruga tog enkodera od 2000 podela) on generise interapt gde mogu da znam smer i da po potrebi radim ++ ili -- na zeljene variable i pri tome postavim odmah brojac na 100 kako bi dobio histerezis i to za sada radi bez greske, nisam mogao da ga uhvatim da brljavi. Sa tim sam zavrsio korisnicki interfejs i menjanje variabli.
Sad prelazim na izlaze i pokretanje releya ...
Reply
#60
Probao sam ovaj zeleni iz Cometa. Zaista loše radi sa QEI. Poigraću se još malo preko vikenda, pa javljam kakva je situacija.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)