Elsősorban a termelő gépek vezérlése érdekel minket . Amik valamit legyártanak . Pl. szerszámgépek, vegyi gépek, ...stb. vezérlése . Nem ide valók, az elvont nehezen körvonalazható okoskodások, mint amilyen pl. a mesterséges intelligencia .
Nekem egy öreg docens tanította (bölcsészmérnök szinten), hogy a forgácsológépek számára az utasításokat hosztprocesszálni kell. Felkapott egy szót, de szerintem fogalma sem volt róla. Az őskőkori gépek még nem tudták saját hatáskörben elvégezni a szükséges koordináta-transzformációkat. (Sőt, nekem sem tanították az egyetemen.)
Később egy CNC fúrógéphez kellett csinálnom előnézetet. Valamint a régi gép által nem ismert utasításokat felbontani a fúrógép által ismert utasítások sorozatára.
Valamikor létezett bitszelet processzor. Személyesen már nem találkoztam vele.
Ez az összelegózás kissé naiv elképzelésnek hangzik. És a jelenlegi trendekkel megy szembe.
Vagy analóg áramkörökből csinálsz hagyományos vezérlést. Az sajnos nem fog ráférni egy kisebb lapkára. Valamikor szekrény méretű vezérlések voltak ezzel a technikával.
Vagy pedig megpróbálod TTL kapukból felépíteni a processzor lényegesebb részeit. Nem lehetetlen, de évekig tarthat. Esetleg mikroprogram futtatásához. De akkor a vezérlő kódot egy számítógéppel kell előállítanod, és betölteni, mint egy lyukszalag. (Ezt nevezhették hoszt processzálásnak?)
Többnyire a műveleti sebesség miatt szoktam aggódni.
Előfordult már olyan is, hogy a kódsűrűség volt kevés. Vagyis a tárban elhelyezhető utasítások száma. Ez attól függ, hogy mennyire elemiek az utasítások. Tehát egy adott műveletet hány utasításból lehet kihozni. Például két változó felcserélése. Az meg egy más kérdés, hogy ennek mennyi az időszükséglete.
Többnyire olyan problémával találkoztam, hogy túl sok műveletet kellett volna végrehajtani egységnyi idő alatt.
Aztán itt is vannak időpazarló programozási módszerek, amit a kezdők még nem értenek igazán. Például egy tömb indexet növelni minden alkalommal, vagy ugyanazt a tömbelemet megcímezni. Az nagyjából olyan, mintha egy zsák krumplit egyesével hoznál el a boltból.
12 bites ADC a képen levő uC-ben is van. DAC csak PWM, de ha normál DAC kell, olyan lábkompatibilis uC változat is van. Ezek miatt nem érdemes panelt tervezni.
Ha csak arra gondoltál, hogy egy nyomtatott áramköri lemezt, saját kapcsolási rajzzal, amelyen uC is van, az elég könnyen megy. Persze alapvető ismeretek (áramkör tervezés, nyomtatott áramköri tervezés) kell hozzá.
Több kínai cég vállal akár 5db-os nyomtatott áramkör készítést smd beültetéssel együtt. Én is rendeltem már ilyet, többször is. Nem is drága, amit én rendeltem, az egy uC-t meg még kb 20 egyéb alkatrészt tartalmazott, 5 db készült, és kb. 1600Ft/db volt (még a chiphiány előtt, most minden drágább).
A dolog úgy működik, hogy még a tervező rendszert is adják online. Ezzel a legegyszerűbb rendelni, persze nem csak így lehet. Van egy nagyon nagy alkatrész bázisuk. Ha ebből választok és teszem fel a kapcsolási rajzra, biztos lehetek abban, hogy van nekik raktáron, tudom az árát, és automatikusan a megfelelő nyomtatási képet teszi fel a nyomtatási képre. Mikor kész a nyomtatási terv, feltöltöm. Ellenőrzi azonnal automatikusan. Megmutatja, hogy nézne ki beültetve a panel, fényképszerűen. Megmondja az árat és a határidőt (be is tartja).
Viszont legtöbbször nincs erre szükség. Van egy csomó kész uC panel, pl. a képen levő a chiphiány előtt 700Ft volt. 32 bites, 72MHz órajelű kontroller, USB meg egy csomó periféria, timerek, uart-ok, gpio portok. Általános célú dolog, akármit lehet belőle készíteni. Minden a penelen van, ami a működéshez szükséges. Csak azt kell hozzákötni, ami az adott feladathoz kell, mondjuk léptető vezérlő, lcd kijelző, nyomógombok.
Nekem úgy tűnik, hogy a mikrokontroller tulajdonképen egy kisebb számítógépes alaplap, amivel ágyúval lövünk verébre.
Viszont ez egy olcsó ágyú, verebek sőt szúnyogok lelövéséhez nagy tömegben gyártják.
Lényegében minden benne van, ami szükséges.
Csak feszültség stabilizátort és esetleg rezonátort kell tenni mellé. (Egyszerűbb esetekben azonban a belső és nem túl pontos RC oszcillátora is megfelel.)
A központi egységen kívül (ami számolni tud és logikai műveleteket végezni)
van benne valamennyi memória, ezen kívül a külvilággal is tud kommunikálni.
Bizonyos típusoknál pedig kvadratúra bemenet, LCD vezérlő kimenet, motorvezérlő kimenet is van.
Továbbá nem túl nagy pontosságú analóg méréseket is képes végezni (persze a mérendő jelet a megfelelő tartományba kell transzformálni). Nagyon sok fajta változat létezik.
Viszont mindig bejön Murphy törvénye, hogy amilyen nekünk kellene, pont olyan soha nincs. És akkor egy számmal nagyobb cipőt kell hordani. Egy olyan változatot kiválasztani, amiben meg szinte mindenből jóval több van mint kellene.
Beteszem illusztrációnak a robotkar vezérlő képét. Kész gyári paneleket tettem fel egy csupalyuk próbapanelre. A 3 aranyszínű felül a stepper vezérlő, a nagyobb egy STM32F103 uC panel, jobbra a Bluetooth modul (ezzel kapcsolódik a mobilhoz, ami irányítja), a kicsi egy táp. Mivel gyári kész panelekből van, viszonylag kevés a huzal a panelen, nem volt túl sok idő összeforrasztani.
Az első ismerkedéshez uC-rel pl. az Arduino rendszer ajánlható, akár ugyanezzel az STM uC-vel. Ennél rengeteg feladatra van kész megírt kód, és a felhasználó úgy tud programot írni, hogy egyáltalán nem kell ismerni a hardvert, a perifériákat. Vagyis már az eslő órában lehet sikerélmény.
Mióta van tisztességes IDE (VSC&PlatformIO), egész használható lett az Arduino rendszer. Én nem ebben írtam a kódot, mert volt néhány idő kritikus feladat, közelebb kellett menni a hw-hez. De egyszerűbb fealadatokra tökéletes.
Messze a legolcsóbb és legegyszerűbb az ilyesmit mikrokontrollerrel intézni. Persze csak egyetlen feladat miatt belatanulni nem feltétlenül érdemes, de ha a feladat gyakori, akkor lehet kész megoldást találni, és nem kell programozni. Vagy megkérni valakit a programírásra.
Fiatal koromban a Szerszámgépipari Művek esztergomi CNC marógép, majd a Bp-i CNC esztergagép gyárában dolgoztam, előbb programozóként, majd fejlesztő mérnökként. Maga a vezérlési elv tudtommal magyar találmányféle és a feltalálók utódaival még dolgoztam együtt. NCT Technika volt a nevük akkoriban és Póka István volt a vezetőjük ....
Akkoriban egy ováldugattyú CNC esztergagépen dolgoztam velük együtt.
Én 30 éve csináltam egy egyszerű fa esztergát 2.5 méteres deszkákból, meg avval az újabb vékony acélos facsavarral . Már a rengeteg e csavart is időbe tellett becsavarozni, ill. összecsavarozni . No ehhez volt egy régi mosógép elektromotorom 220 V . A sebesség csökkentés fa szíjtárcsákkal és használt sima ékszíjakkal oldottam meg, elképzelhetitek, hogy mekkora tákolmány volt .
Azért volt szerencsém is vele: egyszer bekapta az akkori hosszú hajamat a forgó munkadarab, és ha az ékszíjak nem kezdenek el csúszni, akkor letépi a fejbőrömet, a lobogó hajzat ördögi . {most már rövid a hajam}