Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Én nem ajánlom, de írtam, hogy lehet kísérletezni.
Vagy lehet építeni átkapcsolóval és SN7400 kapukkal pergésmentesítést: Bővebben: Link Keresd a Címszót: Switch De-Bounce Circuit Idézet: „Ettől még az optó persze hogy jobb lenne, de a kérdező nem ipari berendezést épít,” Ipari vagy nem ? Mindegy, a slendriánságot a uC portja nem fogja megköszönni ha netalán mégis több feszültség kerül rá.Azon kívül a hosszú lengedező drót se ideális mint antenna, zajt fog összeszedni. Ezért az optócsatolő a uC paneljére kerüljön ne a motorhoz. Opto csatolónak a ledjén már áramnak is kell folynia , nem csak egy kósza indukált feszültség tüske billenti a portot. Mechanikai kopás sincs. 24V-ra előtét ellenállást kell számolni ,avagy SSR-ek bemenetét másolva akár 3-30 V közti áramgenerátoros meghajtást a led elé rakni.
Fogsz a kezedbe egy stoppert, és azzal megméred!
Nincs prellezés, nem kell programozni, Nem kell áramkört építeni ... !
De most miért nem jó ha rátesz a motorra egy relét párhuzamosan, annak a kontaktja meg kapcsolja a uC portját a testjére? Szerintem ennél egyszerűbb nem létezik!
Mechanikusan kopik ... optoban nincs mozgo alkatresz.
Idézet: „Egy 24V-os motor üzemidejét kellene megmérnem.” Ebből nekem nem egy astabil multivibrátor jön le hogy legyen ideje elkopni. Ráadásul fiókból dolgozna. De részemről kiszálltam.
Már ne haragudj, de az én értelmezésem szerint hibakeresésről van szó.
Idézet: „Mivel 2 gép van, és nem dolgoznak egyformán, de a munkahengerek egyformák, csak az időzítés lehet a gond. Ezt kellene kizárnom/bizonyítanom.” Ehhez minek atomreaktort építeni? Ha mégis folyamatos üzemre szeretné megalkotni akkor nem fogalmazott érthetően és részben igazad van, de abban nincs, hogy lehurrogod a másikat a tények ismerete nélkül.
Sziasztok!
Viszonylag nagy sebességű (kb. 1000Hz-es) impulzus sorozatot kellene megszámolnom. Konkrétan az a feladat, hogy egy impulzus kimenetű áramlásmérővel kellene pontos mennyiségeket adagolni. Az áramlásmérő (elvileg) frissen lett kalibrálva, 1000 imp/liter a kimenete. Az adagolást vezérő PLC-n beállított 5liter esetén a bemért adagok között véletlen szerűen 0...200ml közötti eltérések adódnak pozitív és negatív irányokba is. Sajnos a PLC-be nem nyúlhatok bele, de az impulzus vezetéken ha meg tudnám számolni az impulzusokat, akkor kiderülne hogy az áramlásmérő vagy a PLC okozza-e a hibát.
A Capture témakörben kutakodj. Létezik konkrét lib is ebben a témában Arduinora: https://github.com/SMFSW/CaptureTimer
Pulse Counter-t tudnál használni. Megszakítással egyszerűen megoldható, itt van rá egy példa, Google keresésből: https://gist.github.com/omsai/2363047 és egy videó, ami elmagyarázza a működését.
Szerintem hibás a kód.
Nem a legjobb szerintem. Volatile nincs az int előtt, illetve a delay() sem tetszik benne. Az if ...>0. minek? De 2 percet néztem csak, lehet tévedek.
Igen, jól írják előttem szólók, csinálsz egy 10 vagy 1Hz-es megszakítást, Timert kiolvasod, utána nullázod és így tovább (vagy, ha pontos 5 litered van, akkor timer=0 és megszámolod, kiírod kijelzőre). ..és itt van egy kérdés, hogy folyamatosan tudsz etalon átfolyást adni neki, vagy "kancsóval öntözgeted" ? Mert ennyi eltérés gyorsulás-lassulás, minimális mérhető átfolyási mennyiség miatt lazán összejöhet!!! Ha jól számolom, ez 4% hiba.
(csak úgy kérdeztem...)
Hű! Ez jó feladat! Valamikor én is kínlódtam ilyennel, és nem lett jó!
Én úgy próbáltam ugyanezt, hogy egy konyhai mérlegből alakítottam át a mérőkét. Építettem hozzá egy kis vezérlőt, ami terveim szerint bolondbiztossá tette volna a működést. A terv az volt, hogy emberünk odateszi a tálcára az etalont, azt betárázza, és mehet az üres köcsög a helyére. Indító gombot megnyom, és amikor eléri a kívánt tömeget, akkor magától leáll. Az elmélet ez lett volna, de a gyakorlat az volt amit te is tapasztalsz. A rendszer tehetetlensége közbeszólt. Pedig én port szállítottam orsóval, amit meg léptetőmotor hajtott. Mégis, mivel nem volt egyenletes az anyag sűrűsége (levegő kerül bele, futóhomokká válik), a nyomása is ugrál, össze-vissza változott a kitöltött mennyiség. Ha valaki erre tud használható megoldást, az engem is érdekel Esetleg a rendszer nyomását meg lehetne növelni egy elektromos szeleppel. Így a mérőkerék nem tud ide-oda imbolyogni, hiszen a folyadék megtartja.
Valamely jobb mezőgazdasági mérlegen több szálon fut a töltő anyag. A pontos érték elérése előtt a még ki nem töltött anyag súlyát is méri minden szálon, és a hiányzó mennyiségnek megfelelő részből fejezi be a ládát. ( mondjuk ott a répa súlyában elég nagy szórás lehet, és mellékesen darabáru. )
Idézet: „de abban nincs, hogy lehurrogod a másikat a tények ismerete nélkül.” A tények magukért beszélnek. 24 Voltos villanymotor , max 5V-ot elviselő bemenet uC környezetben. Alap bemeneti periféria szint illesztési probléma. A uC portja ne haljon bele a külvilágból érkező jelszintbe, ezen kívül az állapot jelzést adó elem se legyen kopó alkatrész. 2-3 Optocsatolót akár egy döglött egérből is kitermelhetsz(na jó dobozolni is kell).
Hát igen, de ez már jó nagy gép lesz! Amivel én szembesültem, az egy asztalon elférő masina volt (na jó, annyira nem volt kicsi asztal, hegeszteni kellett )
Nem próbáltam, csak mutattam, hogy milyen irányban kellene kutakodni.
Ezen túl vagyok. De sajnos nem ad megfelelő eredményt. De köszi a tippet!
Egyelőre annyi lenne a feladat, hogy 5000 impulzust meg kellene számolni, ami kb. 4-6mp alatt zajlik le. Ennyi idő, amíg feltölt egy 5L dobozos almalevet.
Szivattyú nyomja egy tartályból, és a töltő fejen van egy gyors működésű szelep, amit szintén a PLC vezérel. Valamikor jól működött a készülék, 10ml (0,2%) megengedett hibát tudta tartani. Most azt kellene kiderítenem, hogy a PLC számolja-e rosszul az impulzusokat, vagy a nemrég kalibrált áramlásmérő mér rosszul. Sajnos a hiba sem konstans, random módon hol többet, hol kevesebbet adagol. Van amikor közel 200ml az eltérés, ami hatósági ellenőrzés során komoly büntetést jelent (főleg ha kevesebb, mint az elvárt mennyiség).
Fordítsd meg a dolgot! Generálj 5000 impulzust az arduinoval..., ez gyerekjáték. Ezt add be a PLC-nek, és máris kiderül, jól számol e?!
Van githubon egy félig sem megírt drájver A4963 IC-hez, SPI módban vezérelhető és brushless motort forgat.
Bővebben: GitHub
Hogyan tudnám beírni hogy legyen #define RUN_DISABLE (?) #define DIR_FORWARD (?) a kérdőjel helyére?
Szerintem:
#define RUN_DISABLE 1 #define DIR_FORWARD 1 majd használatkor RUN_DISABLE 0 RUN_DISABLE 1 DIR_FORWARD 0 DIR_FORWARD 1 Amúgy melyik? Mert van 6 db. A hozzászólás módosítva: Márc 5, 2021
Félig az is készen van de nem működik, nem változik a bit 0 ra:
A függvény:
Így biztos nem megy, csak akkor válaszolj ha tudod a választ. A hozzászólás módosítva: Márc 5, 2021
Ennek így értelme nincs. Egy előre #define olt érték soha nem fog neked megváltozni, még a fordítási időben behelyettesíti a RUN_ENABLE helyére az 1<<RUN értéket, a RUN helyére meg nullát, így az 1<<0 értéket ami 1. Visszaolvasni azt a bitet így nem lehet.
Itt pedig a REG_RUN regisztert egy az egyben felülírod egy darab egyessel, a nulladik bit egy lesz a többi nulla. Vagy összefűzöd bitműveletekkel amit ki akarsz löketni, vagy használod erre a már megírt függvényeket, de ez így nagyon nem jó.
Pedig a run/stop függvények jól vannak megírva!
Mindegy majd folytatom, csak annyi működik eredetileg hogy egy motort tud forgatni egy irányba.
Esetleg:
??? A hozzászólás módosítva: Márc 5, 2021
Sziasztok!
Valahogy létre szeretnék hozni egy alacsony frekvenciás PWM jelet arduino segítségével. Az alacsony azt jelentené, hogy kb 2-5s lenne egy periódusideje. Lenne valakinek bármi ötlete, hogy hogyan tudnám megoldani delayek használata nélkül? Olvastam valahol, hogy a Timer egyet valahogyan le lehetne lassítani, ennek köszönhetően nem kellene delayeket használnom és könnyebben megvalósíthatóak lennének a többi funkciók/kiolvasások futás közben. Hatalmas segítség lenne ha valaki elmagyarázná vagy esetleg lenne valami jó ötlete. |
Bejelentkezés
Hirdetés |