Kurzusok

Kurzusok, amelyeket azokról a területekről állítok össze, amelyekkel nap mint nap foglalkozom, a teljesen alapoktól a haladó szintig — beágyazott szoftverfejlesztés, hardvertervezés, irányítástechnika, robotika és PLC-automatizálás, úgy tanítva, ahogy annak idején én szerettem volna megtanulni.

A kártyákon a fő témák szerepelnek — a kurzusok ennél több területet érintenek.

Alapok

Mindegyik a szoftver telepítésével kezdődik. Előzetes tudás nem szükséges, kivéve ahol a kurzus mást jelez.

Hamarosan

Beágyazott rendszerek szoftverfejlesztésének alapjai Arduino platformon

Beágyazott szoftver az alapoktól, kézzel fogható hardveren — szenzorok olvasása, szervók és motorok meghajtása, időzítők, megszakítások és soros kommunikáció, úgy megírva, hogy a kód a projekt növekedésével is olvasható maradjon.

  • Az IDE telepítése, és az első program feltöltése a panelre
  • Digitális és analóg I/O, és hogy valójában mit csinál a mikrovezérlő
  • Időzítők, megszakítások és nem blokkoló kód a delay() helyett
  • Soros kommunikáció: UART, I²C és SPI
  • Adatlap olvasása és szenzor meghajtása belőle
  • PWM: kitöltési tényező, frekvencia, és hogyan lesz a digitális lábból változtatható kimenet
  • Beavatkozók meghajtása: hobbiszervók, DC-motorok, relék, és a hozzájuk tartozó meghajtók
  • Objektumorientált alapok: osztályok, objektumok, és egy szenzor vagy motor újrahasznosítható osztállyá alakítása
  • Állapotgépek és a kód modulokra bontása
Hamarosan

Hardvertervezés alapjai

Az ötlettől a ténylegesen megrendelhető panelig. Minden téma az elmélettel kezdődik, majd megépítjük KiCadben — így áll össze egy teljes fejlesztőpanel a mikrovezérlőjével, szenzoraival, beavatkozóival, valamint analóg és digitális I/O-jával. Ugyanaz a panel, amelyen a beágyazott szoftverfejlesztési kurzus fut.

  • A KiCad telepítése és az eszközök megismerése
  • Kapcsolási rajz készítése, és hogy mit tesz nyilvánvalóvá egy jó rajz
  • Alkatrészválasztás: adatlapok, lábnyomok és beszerezhetőség
  • Tápellátás: stabilizátor kiválasztása, hidegítés, és tiszta tápfeszültség a mikrovezérlőnek
  • Csatlakozók és tüskesorok: szenzorok, beavatkozók és analóg/digitális I/O kivezetése a panelről
  • NYÁK-tervezés alapjai — rétegfelépítés, huzalozás és földelés
  • Tervezési szabályok, amelyek illeszkednek a gyártó tényleges képességeihez
  • Gyártási fájlok: Gerber, fúrásfájlok, anyagjegyzék és beültetési pozíciók
  • A projekt: egy teljes fejlesztőpanel, az üres laptól a megrendelésig
Hamarosan

Irányítástechnika és szimuláció alapjai Pythonban

Modellezz egy valódi rendszert, majd szabályozd — teljesen Pythonban. Felépítjük a szakaszt, bezárjuk a hurkot, megírjuk a PID-et a nulláról, és közben megtanuljuk azt az elméletet — stabilitás, frekvenciamenet, szűrés —, amely megmagyarázza, miért viselkedik úgy, ahogy.

Alapszintű algebra és analízis, differenciálegyenletek, valamint alapvető jelek és rendszerek ismerete szükséges.

  • A Python és a tudományos csomagok telepítése, és az első szimuláció futtatása
  • Mi az a dinamikus rendszer, és hogyan írjuk fel egyenletekkel
  • Átviteli függvények és blokkvázlatok: a differenciálegyenlettől a G(s)-ig, és a blokkok hurokká fűzése
  • Szakasz szimulálása: időlépések, integrálás, és miért számít a lépésköz
  • Nyílt és zárt hurok, és hogy valójában mit ad a visszacsatolás
  • Pólusok, csillapítás és stabilitás — miért leng be egy rendszer, és mit változtat valójában a hangolás
  • A frekvenciatartomány: Bode-diagramok, erősítési és fázistartalék, és mit jósolnak meg
  • Rendszeridentifikáció: modell illesztése mért ugrásválaszra
  • PID a nulláról: arányos, integráló és differenciáló tag — és az anti-windup
  • Maradó hiba és rendszertípus: miért marad eltérés csak P-vel, és miért szünteti meg az I
  • Hangolás és az ugrásválasz olvasása: felfutási idő, túllövés és beállási idő
  • Előrecsatolás: a zavarás korrigálása még mielőtt hiba keletkezne
  • A szimuláció őszintévé tétele: szenzorzaj, kvantálás és beavatkozói korlátok
  • Szűrők: aluláteresztő, felüláteresztő, és a zajos mérés megszelídítése
  • Diszkrét idő: mintavételi frekvencia, a PID differenciaegyenletként, és mi változik valódi hardveren
  • P, PI és PID összehasonlítása ugyanazon a szakaszon, és értelmes ábrák készítése
Hamarosan

ROS 2 és Gazebo alapjai

Építs mobilrobotot, amely magától tájékozódik, teljesen szimulációban — node-ok és topicok, egy robot, amelyet te írsz le, szimulált szenzorok, menet közben épülő térkép, és egy útvonaltervező, amelynek végignézheted a gondolkodását.

  • A ROS 2 és a Gazebo telepítése, és az első node futtatása
  • Node-ok, topicok és üzenetek — hogyan beszélnek egymással egy ROS-rendszer részei
  • Munkaterületek és csomagok: a colcon, és hogy valójában hol lakik a kódod
  • Node-ok írása Pythonban: publisher, subscriber és időzítő
  • Service-ek, action-ök és paraméterek, és hogy mikor melyikhez nyúljunk
  • Launch fájlok: egy teljes rendszer indítása hat terminál helyett
  • A robot leírása: URDF, linkek, csuklók és a TF-fa
  • Gazebo: világok, a robot betöltése, és a szenzorai szimulálása
  • A robot mozgatása: /cmd_vel, odometria, és a hurok bezárása
  • LiDAR és a foglaltsági rács: mit tud valójában a robot a világról
  • SLAM: térkép építése menet közben
  • Útvonaltervezés: A*, Dijkstra, BFS és DFS, és mennyibe kerül mindegyiknek ugyanaz az út
  • RViz és hibakeresés: láthatóvá tenni egy egyébként láthatatlan rendszert
Hamarosan

Ipari robotika alapjai FANUC RoboGuide-ban

Hattengelyes ipari robotok programozása teljesen szimulációban — a teach pendant és a TP-programok, mozgás és koordinátarendszerek, programlogika, gépkiszolgálás és I/O-kézfogások, gépi látás és biztonsági zónák, egy teljes gyártócellában, amelyet magad építesz fel.

  • A RoboGuide telepítése és az első cella létrehozása
  • Gyártócella felépítése: robot, szerszámozás, készülékek és anyagáramlás
  • A teach pendant: kézi mozgatás, TP-program létrehozása és pozíciók betanítása
  • Csuklós, lineáris és köríves mozgás — és hogy mikor melyik a helyes
  • Sebesség és pozicionálási mód: FINE, CNT, és hogyan alakítja az átmenet a pályát és a ciklusidőt
  • Szerszám- és felhasználói koordinátarendszerek: TCP beállítása hatpontos módszerrel, és miért borul fel egy rossz frame-től minden
  • Regiszterek, pozícióregiszterek és programvezérlés: IF, JMP/LBL, CALL és WAIT
  • Digitális I/O és kézfogás a robot és a gép között
  • Gépkiszolgálás: CNC vezérlése — ajtó, befogó, ciklusindítás — és az állapotának visszaolvasása
  • Felvétel-lerakás és palettázás pozícióregiszterekkel
  • Két robot összehangolása egy cellában: megegyezni, ki mozog, és kitérni egymás elől
  • Kameraalapok: hogyan működik a gépi látás, és szimulált kamera beállítása RoboGuide-ban
  • A látás gyakorlatban: akadályérzékelés és a kamera által észlelt akadályok számlálása
  • Biztonság: ütközési zónák, DCS, kerítések és vészleállítás — előbb szimulációban beállítva
  • Ütközésmentes pályák és a ténylegesen elért ciklusidő ellenőrzése
Hamarosan

PLC-programozás alapjai TIA Portallal és Factory I/O-val

Létradiagram Siemens S7-1500-on, 3D-s üzemmodellel hajtva a Factory I/O-ban. A szimulátorban kezdünk, összekötjük a kettőt, majd a kurzus nagyobb részében valódi folyamatokat építünk és keresünk bennük hibát — hardver nélkül.

  • A TIA Portal és a Factory I/O telepítése, és mindkettő beüzemelése
  • Factory I/O alapok: jelenet felépítése, annak érzékelői, beavatkozói és jelei
  • TIA Portal alapok: projekt létrehozása, S7-1500-as CPU és a PLCSIM
  • A ciklusidő, és hogyan alakítja a logikaírás módját
  • A TIA Portal és a Factory I/O összekötése, és a helyes I/O-hozzárendelés
  • Létradiagram: érintkezők, tekercsek, időzítők és számlálók
  • Funkcióblokkok és újrafelhasználható kód: FB, FC és adatblokkok a rungok másolgatása helyett
  • Analóg I/O: tartályszintek olvasása, és a nyers értékek átskálázása mértékegységre
  • Folyamat felépítése állapotgépként — indítás, leállítás, alaphelyzet és vészleállítás
  • Alapvető folyamatirányítás: szelepek és szivattyúk vezérlése, kétállású szabályozás hiszterézissel, és szakaszos folyamat vezérlése
  • Rengeteg gyakorlás: teljes folyamatok felépítése és hibakeresése végig szimulációban

Haladó

Mindegyik ott folytatja, ahol a hozzá tartozó alapkurzus véget ér.

Hamarosan

Haladó beágyazott szoftverfejlesztés ESP-IDF-fel és FreeRTOS-szal

Túl az Arduinón, valódi eszközláncon — modern C++ ESP-IDF-en, komponensekre bontott projekt, FreeRTOS és a vele járó konkurenciahibák, vezetékes és vezeték nélküli kommunikáció, valamint az a verziókövetés és tesztelés, ami kordában tartja a növekvő kódbázist.

  • Az ESP-IDF beállítása, és hogy mit ad egy valódi eszközlánc az Arduino IDE-hez képest
  • Komponensek és CMake: egynél több fájlból álló projekt felépítése
  • Modern C++ mikrovezérlőn: osztályok, RAII, és amit kerülni érdemes
  • Architektúra: interfészek, függőséginjektálás, és valóban tesztelhető kód
  • Firmware egységtesztelése, gazdagépen és célhardveren
  • FreeRTOS: taszkok, prioritások, és hogyan dönt az ütemező
  • Üzenetsorok, szemaforok és mutexek: adatmozgatás taszkok között
  • Versenyhelyzetek és prioritásinverzió — a hibák, amelyeket a konkurencia hoz magával
  • Vezetékes protokollok: UART, I²C, SPI és RS485
  • WiFi: csatlakozás, üzembe helyezés, és fennmaradás akkor is, ha a hálózat nem az
  • Ethernet és TCP/IP: socketek, és kommunikáció a panelen kívülre
  • Tárolás és OTA: NVS, flash, és firmware-frissítés a kiszállítás után
  • Hibakeresés JTAG-gel, és a crash dump olvasása
  • Git a gyakorlatban: branchek, előzmények, és közös munka másokkal
Hamarosan

Haladó hardvertervezés: vegyes jelű panelek

Olyan panel, ahol az analóg és a digitális ugyanazon a rézen osztozik — elrendezéstervezés, tápintegritás, földelés, analóg bemeneti fokozatok, EMC és hőkezelés, valamint azok a huzalozási döntések, amelyeken múlik, hogy a halk jelek halkak maradnak-e.

  • Többrétegű rétegfelépítések, és a megfelelő kiválasztása vegyes jelű panelhez
  • Elrendezéstervezés: az analóg és a digitális rész szétválasztása, mielőtt bármit huzaloznál
  • Tápellátás: lineáris vagy kapcsolóüzemű stabilizátor, és melyik hová való
  • Hidegítés és a tápelosztó hálózat: merre folyik a visszatérő áram
  • Földelés: síkok, felosztások, és a tévhitek, amelyeket el kell felejteni
  • Műveleti erősítők és analóg bemeneti fokozatok: erősítés, ofszet és szűrés
  • Az ADC helyes meghajtása: mintavételezés, alias-hatás és a referencia
  • Zaj és áthallás: honnan erednek, és hogyan lehet megtalálni őket
  • EMC: kibocsátás, zavartűrés, és tervezés úgy, hogy elsőre átmenjen
  • Nagy sebességű huzalozás: impedancia, hosszillesztés és differenciális párok
  • Termikus tervezés: disszipáció, a réz mint hűtőfelület, és hőmérséklet-mérés
  • Gyárthatóságra és tesztelhetőségre tervezés: finom raszter, tűrések, mérőpontok, és amiért a gyártó felárat kér
  • Beüzemelés: olyan panel tesztelése, amelyet még sosem kapcsoltál be
Hamarosan

Haladó irányítástechnika Pythonban: klasszikus, állapottér és fuzzy

Túl az egyetlen PID-hurkon — előbb az a klasszikus analízis, amelyet az alapkurzus szándékosan kihagyott, majd állapottér megfigyelőkkel és optimális szabályozással, végül fuzzy szabályozók azokra az esetekre, ahol a szabályokat könnyebb leírni, mint a matematikát.

  • A Laplace-transzformáció kézzel: honnan származnak valójában az átviteli függvények
  • Gyökhelygörbe: hogyan mozognak a zárt hurkú pólusok a körerősítés növelésével
  • Nyquist: stabilitás és tartalékok a felnyitott hurok frekvenciamenetéből
  • Állapottér: rendszer leírása mátrixokkal egyetlen átviteli függvény helyett
  • Irányíthatóság és megfigyelhetőség — mit árul el az állapottér-modell a tervezés előtt
  • Állapot-visszacsatolás és pólusáthelyezés
  • Megfigyelők: a nem mérhető állapotok becslése
  • LQR: bízzuk a hangolást egy költségfüggvényre
  • Fuzzy szabályozás: tagsági függvények, szabálybázis és defuzzifikáció
  • Mamdani-szabályozó építése, és hangolása a szabályok átírásával
  • PID, állapot-visszacsatolás és fuzzy őszinte összehasonlítása ugyanazon a szakaszon

Szeretnél értesítést kapni, amikor elindul valamelyik?

Írj egy e-mailt