Moderátoři: Michal Dalecký, Jarda H., Rudolf, 123.marek
belgarat píše:Chces-li omezit (ne odstranit!) cuknuti, spinej napajeni serv Arduinem pres nejaky tranzistor; viz sidlo, spina MOSFETem (maly ubytek napeti). MOSFET ti muze zapnout vsechna serva naraz, v Arduinu musis akorat vsem Servo objektum nastavit nejprve hodnotu a PAK zapnout napajeni serv, a PAK pockat (delay). Nakonec na vsech servech detach(). Ma-li servo pri zapnuti ridici signal, cukne take, ale i blby cinsky klon SG90 asi jenom 0,5-1mm (pro peclivky: neplati asi univerzalne, ale alespon pro 4 serie 3 ruznych Aliexpress "dodavatelu")
amirinda píše:Když místo hodnot 45 a 25 dám třeba 40 a 20 tak už se serva nehýbou...
amirinda píše:[b][i]switch (Servo1Position) { //...v zavislosti na poloze prvniho serva zmen polohu obou serv...
...
Servo1.write(45);
delay(300); //...pozadovanou rychlosti (cim vyssi hodnota, tim nizsi rychlost prestaveni)
Servo2.write(45);
belgarat píše:S prominutim, ten program je napsany dost zvlastne, mam-li byt kulantni. Vsimni si, ze mas pouze 2 stavy. V jednom jsou serva 40/45, v druhem 20/30. Kdyby puvodni autor zvolil pro zapis do EEPROM cislo stavu, a pozadovane pozice serv zapsal do nejake konfigurace nebo - kdyz uz musi copy-pastovat radky pouzival konstanty, stacilo by zmenit definice poloh na jednom miste. A navic by informace v EEPROM (stav #1, stav #2) platila pro jakekoliv prirazeni poloh.
belgarat píše:Nesouvisi s nefunkcnosti serva, ale ten komentar u "delay" je hloupost. Servo1.write(45) posle instrukci "postav se na uhel 45" a servo tam dojede jak muze nejrychleji, jinak to jaksi neumi. Ten delay zvysuje prodlevu mezi posunem serva1 a serva2, rozhodne nemeni RYCHLOST POSUNU serva1. To bys musel jinak - vystavit o par stupnu jinak nez ted - pockat - zas o par stupnu jinam - pockat. Az bys dosahl koncove pozice.
belgarat píše:Dal bych se zamyslel nad moznymi prekmity tlacitka Button1State. A naposledy, behem prestavovani serv (2x delay) je arduino mrtve - nereaguje na pripadne rozpojeni/sepnuti tlacitka. Ver mi, ze za provozu te bude 0,6sec mrtvola opravdu dost otravovat
amirinda píše:tak zas problém s nastavením serv, pokud v codu pohnu hodnotama abych nastavil serva jak potřebuji, tak přestanou fungovat a nevím proč
Když místo hodnot 45 a 25 dám třeba 40 a 20 tak už se serva nehýbou...
JenikPluto píše:No tak on ten soft nebyl puvodne urcen ke zverejneni a nebyl ani duvod ho nijakym zpusobem ladit, tak jak je, funguje, byt to neni zadna programatorska krasa, to
...
(asi 2 roky, pokud se nemylim), jsem je nemenil...
belgarat píše:Prekmity ma cenu resit v momente, kdy tam neni delay, pokud tam delay je, tak arduino zareaguje na prvni stisk, ...
Zpět na Elektrika a elektronika
Uživatelé procházející toto fórum: Google [Bot] a 1 návštěvník