2018. május 31., csütörtök

Titan szívás

Csak halkan kérdem. Szabad ennek így kinéznie néhény hónap használat, vagy egy elakadt nyomtatás után? E3D Titan Extruder - eredeti angol verzió, az E3D-Online-ról rendelve.


2018. május 12., szombat

"Bőrvizsgáló" mikroszkóp

Szép sorban le fogom írni a szavazásra bocsáljtott projectekről, hogy mi micsoda. A házautomatizálás központ után jöjjön a
Bőr (Leather) vizsgáló mikroszkóp és nem a Bőr (Skin) vizsgáló mikroszkóp.

Ez a project a feleségemtől jött.
Van egy speciális mikroszkóp a piacon, aminek a tárgyasztala fűthető. Ez régi tárgyak restaurálás előtti vizsgálatához használható. Esetünkben bőrtárgyakról beszélünk, de másra is használható.
Az a cél, hogy meghatározzuk azt a pontos hőmérsékletet amikor bizonyos változások végbemennek a mintában.
Ez egy időigényes feladat és a jelenleg használt eszköz elég öreg, valamint korlátos a használhatósága.
Úgy döntöttem, hogy tervezek és építek egy újat.
"Ha az egyetlen szerszámod egy kalapács, akkor hajlamos vagy minden problémát szögnek nézni."
Tehát építsünk egy 3D nyomtatót!!!
A terv a következő:
Hardver (nagyrészt):
  • Építek egy fűtött platformot, amit egy Marlin firmware-el ellátott Arduino Mega-ról fogok vezérelni, a Marlin PID vezérlését használva, külső MOSFET-tel és a szokásos 100k-s NTC-vel mérve (aktuálisan Anettka eredeti MK8 fejéből szedtem ki)
  • Változtatható intenzitású világítás alulról (a Marlin doboz világítása)
  • Z tengely menetes szárral, Nema 17-es léptetőmotorral, DRV8825-ös vezérlővel, végálláskapcsolókkal. Erre felszerelve egy mikroszkópkamera. A tengely mozgása vezérli a fókuszt
  • A kamera és az Arduino egy PC-re kötve USB-n keresztül
Szoftver:
A következőt tervezem C#-ban megírni:
  • A fűtés vezérlése gcode-al, a megfelelő fűtési görbe elérése érdekében (A PID hangolása is közrejátszik)
  • A kamera képének rögzítése az időbélyeggel és a hőmérséklettel együtt
  • Az értékek (idő, hőmérséklet) beágyazása a kamera képébe
  • A Z tengely manuális vezérlése a gépről.
Később:
Autofókusz a kamera képe alapján, konvoluciós mátrix és hasonló "computer vision" vuduk felhasználásával.

A video és kamera kezeléshez az aforge.net könyvtárat tervezem használni, amit már korábban is használtam.

2018. május 6., vasárnap

Házautomatizálás - Docker építés

Elkezdtem a Docker infrastruktúra felépítését a Hyper-V szervereimen a házautomatizálás (és más) rendszereimhez.
A komfort zónám, ha linuxról beszélünk elsősorban az Ubuntura és a Debianra terjed ki. Különböző forrásokból azt hallottam, hogy Alpine linux-ok kéne a Docker-hez használni. Tulajdonképpen már belefutottam néhány előregyártott Docker image-be amik Alpine-on alapulnak a munkám során. Szóval úgy döntöttem, hogy az új rendszert Alpine-ra építem, ez jó lehetőség a tanulásra.
Első:
Letöltöttem a virtualizált gépnek optimalizált telepítőt, gyártottam egy Gen2-es Hyper-V gépet és elindítottam.
Igen, virtualizációra optimalizált, csak épp nem a Hyper-V-re. El se indult.
Második:
Letöltöttem a standard telepítőt. Ez végre elindult a Hyper-V-ben így felraktam egy vhdx-re.
Miután általában másolom az alap vhdx-et, az újabb virtuális gépek előállításához, az Alpine itt kap egy plusz pontot tőlem, miután nem kell a boot folyamatot patkolni ehhez mint az Ubuntunál.
Felraktam a nano-t, miután pár konfig fájlt szerkesztenem kell a kész gépeken, és szétmásoltam a vhdx fájlokat, elkezdtem gépeket gyártani belőlük.
Harmadik:
Beállítottam az IP címet, a gép nevét, a DNS-t, átjárót, stb. Csak a szokásos dolgokat.
Újraindítás után nem indult el mégegyszer. Az ok a chronyd. Miután nem tudta az internetről az időt begyűjteni, megállította a boot folyamatot. Örökre. Se konzol, se SSH.
Ok, kinyírtam a gépet, újragyártottam az alap vhdx-ből. Körültéztem, nem találtam semmi megoldást. Végül megnéztem a chrony csomag tartalmát és kiderült, hogy a timeout opciót a /etc/conf.d/chronyd fájlban tudom beállítani. Az ARGS opcióba beírtam: -t 60
Negyedik:
Átkonfiguráltam az SSH-t, hogy nekem megfeleljen, hozzáadtam azt a repo-t ami a Docker telepítéséhez szükséges extra csomagokat tartalmazza.
Felraktam az összes x64-es gépen a Dockert, beállítottam, hogy boot-nál induljon el.
Ötödik:
Elindítva a Docker-t ezt kapom:


Jónéhány próbálkozással sem sikerült ezt a dolgot rendbeszedni, de közben találtam cikkeket arról, hogy az Alpine nem alkalmas a feladatra:
http://janhapke.com/blog/alpine-linux-sucks-for-hosting-docker-containers/
http://www.nathanbak.com/?p=37

Döntöttem. Elfelejtem ezt és megyek vissza az Ubuntura. A következő próbálkozásom a vadiúj Ubuntu 18.04 LTS-el lesz.

Házautomatizálás központ

2016-ban elkezdtem dolgozni egy házautomatizálási projecten amit végülis félreraktam.
Azóta egyre jobban érzem, hogy tennem kéne valamit az ügyben. Miután befejeztem a Robo3D nyomtatóm javítását, nem volt aktuális projectem, tehát kiraktam egy szavazást ide a bal oldalra, hogy mi legyen a következő projectem.
A házautomatizálás központ lett az egyértelmű nyertes. Elkezdtem gondolkozni, hogy mit csináljak és hogyan.
A döntéseim:


  • Modulárisan akarom felépíteni a rendszert a központtal kezdve (a jelenlegi project csak a központról szól)
  • OpenHAB-ot fogok használni központként (ez az ami támogatja a meglévő Conrad FHT/FS20 termosztátjaimat)
  • Hibatűrő megoldást akarok
  • Akkor is működjön, ha nincs internet
  • Valami egykártyás mikrogépre fogom rakni (SBC)
  • 64 bites rendszer legyen - kicsit a jövőnek építem
  • Lehetőleg meglévő dolgokat szeretnék használni

A meglévő IT infrastruktúrámról - ennek jelentős befolyása van a döntéseimre:
Két, VPN-el összekötött helyszínem van. Az egyik a házam, a másik az irodám. Jelenleg 4 MS Hyper-V szervert futtatok. 3 az irodában 1 itthon van.
A rendszer alapvetően Docker-re fog kerülni. Azt tervezem, hogy építek, egy 1U-s rack dobozt, beleteszek két Pine64 panelt, két 5V-os tápot és talán még két SSD-t.
Két Docker Swarm cluster épül:

  1. Egy x64-es Cluster: két Manager/Worker kombinált node-al amik az irodai Hyper-V-kre kerülnek és egy csak Manager node-al ami az itthoni Hyper-V-re kerül.
  2. Egy ARM Cluster: két Manager node amik az irodai Hyper-V-kre kerülnek, egy ami az itthonira kerül ésa Worker-ek a Pine64 panelek lesznek.

Az OpenHAB konténer(ek) menn(ek) a Pine64-ekre, plusz GlusterFS, plusz HAProxy mint hibatűrő megoldás
Az x64 Clusterre mennek a kiszolgáló dolgok:

  • Privát dokker registry
  • Zabbix, vagy Nagios monitoring
  • Egyéb konténerek amik a munkámhoz kellenek (nem kapcsolódnak a házautomatizáláshoz)

Az adatgyűjtés és az MQTT vezérlés elhelyezését/megvalósítását még nem találtam ki.
Ha a fenti rendszer összeállt, akkor fogok a szenzorok és beavatkozó szervek integrációjával foglalkozni.

És igen, mielőtt megkérdeznéd - Komplett idióta vagyok. :-D

2018. május 4., péntek

Szavazás - Eredmény, Folytatás

Egy pár napja kiraktam egy szavazást, hogy mivel folytassam tovább a projectjeimet.
Ennek lett egy eredménye, de nem végeredménye:
  1. Házautomatizálás központ
  2. Nagyméretű 3D nyomtató
  3. Fénymetronóm v2
  4. Bőrvizsgáló mikroszkóp, CNC maró, Hálózati mérődoboz

Na szóval, a következő fog történni:
Írok néhány mondatot mindegyik projecthez, hogy tulajdonképpen mi is ez, mit kellene vele csinálni, valamint nekikezdek néhánynak (na nem pont csak az elsőnek, ha egy időben, csak egy projectel foglalkoznék az nem is én lennék)
Ezen túl, a szavazás marad, továbbra is lehet nyugodtan nyomogatni, továbbá majd jönnek további pontok hozzá, és ki is fognak kerülni dolgok belőle - ami elkészült az pl. biztosan.

2018. május 1., kedd

Szavazás

Most az az állapot következett be, hogy nincs futó projectem (csak egy rakás félbehagyott, meg új ötletek).
Arra gondoltam, megszavaztatom azokat akik olvassák az írásaimat, hogy válasszanak, mi legyen a következő. Kiraktam egy szavazást ide bal oldalra. Tessék szavazni!

Robo3D újáépítés

Egy jó ideje nem írtam semmit.
Az elmúlt hónapban nem sok időm volt a projectjeimen dolgozni. Csak egyetlen darabra fókuszáltam.
Majdnem öt éve kezdtem a szívásokkal teli utamat a 3D nyomtatás világában. Az eredeti elképzelésem annyi volt, hogy 3D nyomtatott alkatrészeket használok az elektronikai projectjeimben és nem mászom bele a technológiába. Ez azóta megváltozott és rengeteget tanultam. Ennek az oka, hogy a megvett Robo3D egy rakás szemét. Két évig tartott, hogy elfogadható eredményt produkáljon. Majd újra kimúlt, és félretettem, mostanáig.
Akartam egy 3D nyomtatót az irodába. Így megjavítottam/átalakítottam a Robo-t.

  • Nyomtattam egy javított Greg's wade extrudert
  • Terveztem egy új tárgyhűtőt
  • Lecseréltem a Z végálláskapcsolót egy kapacitív szenzorra (egész jól működik az üvegasztallal)
  • Lecseréltem az elektronikát egy komplett új Arduino Mega + Ramps + DRV8825 szetre
  • Feltettem egy grafikus LCD-t
  • Adtam hűtést az elektronikának (alátettem egy számítógépes HDD hűtőt)
  • Fordítottam egy aktuális testreszabott Marlin-t rá
  • Beszereletem némi világítást (két LED szalag a tetejére)
  • Lecseréltem az E3D v6-ot egy újra (olyanra aminek patronos szenzor van a fűtőblokkjában)
  • Újrakábeleztem a nagyját
Itt az eredmény, az első nyomtatással az asztalon:

Már csak némi kábel kötözés, meg ragasztás maradt hátra amíg bevihetem az irodába.