mlab-modules / windgauge03 Goto Github PK
View Code? Open in Web Editor NEWDifferential pressure wind speed sensor with magnetometer.
Home Page: https://www.mlab.cz/module/WINDGAUGE03/
License: GNU General Public License v3.0
Differential pressure wind speed sensor with magnetometer.
Home Page: https://www.mlab.cz/module/WINDGAUGE03/
License: GNU General Public License v3.0
Aby víčko bylo zaručeně vodotěsné, tak potřebuje hodně perimetrů. (Obvykle tak 6, ale reálnou hodnotu je potřeba vyzkoušet)
Při pokusu o tisk s takovým nastavením vznikl tento výsledek:
Je tak zřejmě potřeba zkontrolovat, jak vypadají tiskové vrstvy a výplň pod vrchlíkem víčka. A případně podle toho upravit parametry tisku, nebo model.
Aktuálně navržené řešení uložení vodičů omotáním okolo PCB je prakticky nerealizovatelné. Problémem je, že nelze udržet vodiče správně umístěné pod víčkem při nasazování víčka.
Nově navržený kanálek pro přivedení vodičů je však dostatečně tlustý na to, aby jím bylo možné protáhnout vodiče i s nakrimpovanými kontakty konektoru. Tím je umožněno zcela nové řešení, že by vodiče byly rovnou správně dlouhé a mohly být přivedeny rovnou do konektoru.
Délka vodičů ale nikdy přesně správná nebude, pouze přibližně. Takže zde je potřeba mít nějakou co největší rezervu. Aktuálně jsem však vyzkoušel, že kanálek je tak široký že v něm vzniká asi 15mm rezerva délky, kterou do něj lze natlačit. (Možná by bylo možné tuto rezervu zvětšit)
Případně by bylo možná udělat místo pro vodiče vytvořením druhého kanálku z protější strany, než kde vede teď. (Tento kanálek by asi mohl být slepý a přebytečná délka vodiče se do něj natlačí od PCB z vrchní strany)
Vyplývá z toho ale že je zřejmě potřeba obnovit původní menší kapkovitý kryt bez kulatých rohů. Ten byl lepší neboť nespotřebovával tolik materiálu a neměl takový aerodynamický odpor.
Při minulých experimentech byly vytištěny dvě verze nastavení venturiho trubice.
První starší verze byla testována za jízdy na autě, kde nastal stav, že při rychlostech i do 100km/h došlo k saturaci tlakového snímače. Jak ukazuje následující graf.
Z tohoto důvodu byla vytvořena nová verze, která má větší průměr zúžené části tak, aby se zmenšil tlakový spád. Tato verze má však průměr zřejmě moc velký a tlakový spád je velmi malý, tím je měření zatíženo velkou chybou. Rozdíl je viditelný na následujícím grafu:
Samotný šum pak lépe vynikne, když se měření přenormuje na stejnou škálu:
Řešením tohoto problému by zřejmě mělo být upravení průměru zůžení úzké části na nějakou hodnotu mezi oběma aktuálně experimentálně vyzkoušenými průměry a opětovné vyvážení modelu.
Jednotlivé typy ložisek mají mírně jiné průměry trnu. V důsledku toho současný průměr otvoru v otočném dílu nepasuje na Adafruit slip ring 22mm, který je o několik desetin milimetru větší, než současná díra.
Při odvrtání otvoru vrtákem 8mm díl na trn ložiska sice už jde nasadit ale zároveň je příliš volný.
Při vyšších rychlostech proudění okolo anemometru došlo k vyckvaknutí otočného dílu z trnu ložiska.
Záležitost je potřeba řešit, protože to jednak způsobilo, že do ložiska začala téct voda a zároveň se může stát, že stejným způsobem anemometr vypadne i při nižší rychlosti.
Řešením by mohlo být stažení trnu symetrickými šrouby, tak aby otočný díl byl na trnu mírně zdeformován. Je ale důležité, aby vnější povrch krytu ze strany šroubů nebyl nijak spojen s vnitřním (suchým) objemem pro ložisko.
Jedna z možných realizací tohoto řešení by mohla vypadat následovně:
Šrouby by tak byly symetricky po obou stranách otvoru pro ložisko, tak aby co nejtěsněji svíraly vytištěné pozdro pro ložisko. Cílem je zajistit, že po utažení šroubů se pouzdro mírně zdeformuje do oválu. Deformace ostatních částí anemometru by tak pokud možno měla zůstat minimální.
Issue je pokračováním původního MLAB-project/Modules#17
Při tisku dochází v horní části výřezu pro ložisko k porouchání perimetrů.
Tato porucha se projevuje jednak propadnutím perimetrů (i u předchozích variant výtisků). Tyto propadané perimetry lze po vytištění odřezat nožem.
Nově však vzniká porucha, kdy se díky husté výplni perimetry i nadzvednou, což způsobuje zaražení trysky o model a ztrátu kroků krokového motoru. Následující část je tak tištěna posunutá.
Úplné vyřešení tohoto problému vyžaduje dva kroky.
Aby otočný díl dobře držel na ložisku anemometru, tak je výhodné, aby měl co nejníže těžiště a nedocházelo tak k vyvracení ložiska.
Toho lze dosáhnout posunutím hmotnosti, která vyvažuje anemometr co nejvíce dolů.
Těsně pod konektorem na PCB se senzory je na přívodním kanálků vodičů zub při vyústění ke konektoru.
Vzhledem k tomu, že se vodiče protahují směrem od otočného ložiska k PCB, tak tento zub velmi výrazně komplikuje protožení kabeláže. Při montáži jsem jej ručně zahladil pájkou, abych vůbec byl schopen kanálkem protáhnout vodiče.
Ani druhá stěna kanálku na tom není úplně nejlépe:
Očekávaným řešením takového kanálku je plynulé vyústění až na povrch modelu bez zubu o který by se vodiče mohly při protahování zaseknout.
V aktuálním řešení by to možná mohlo jít namodelovat tím způsobem, že kanálek vodičů bude protažen až naprovrch skrz již existující "trychtýř", tím pravděpodobně vznikne nevzhledná kombinace trychtýře a kanálku, která ale umožní protožení vodičů.
V případě že by se našlo nějaké estetičtější řešení, tak by to určitě bylo přínosné.
Konstrukci UZ anemometru by zřejmě bylo možné výrazně zjednodušit digitálním zpracováním signálu v kontinuálním režimu.
Tj. tak, že by signál nebyl zpracováván pulzně. Ale naopak by byl kontinuálně vysílán signál umožňující měřit fázový posuv.
Takové řešení by asi nutně potřebovalo využití většího výpočetního výkonu. Anemometr by pak zřejmě podobně jako DISTROMETER01 končil USB zvukovkou připojenou do nějakého počítače.
Šrouby pro fixaci osy mají délku 15mm.
Pro použití anemometru se ukazuje jako poměrně komplikované ověřit, že je anemometr správně zkalibrován. Kalibrace totiž obsahuje jak směrovou, tak i rychlostní složku.
Postup, který umožňuje zkalibrovat/zkontrolovat obě měřené složky proudění by mohl vypadat tak, že anemometr bude namontován na střechu auta společně s GPS přijímačem. S autem se pak bude jezdit po kružnici ve stabilních větrných podmínkách.
Přesnost kalibrace by pak měla být vidět v polárním grafu. Který by vypadal podobně jako tento geologický. Hlavní rozdíl je, že v grafu by byly zakresleny dva měřené zdroje. Jedním by byl azimut a rychlost z anemometru a pak jinou barvou azimut a rychlost podle GPS.
V případě, že by automobil jezdil po kružnici konstantní rychlostí. Tak tvar který bude v tomto polárním grafu zakreslen na základě dat z GPS bude kruh.
Pro data z anemometru platí totéž pouze za předpokladu dokonalého bezvětří. Je však mnohem pravděpodobnější, že nastanou dva doprovodné jevy způsobené nenulovou rychlostí vetru.
Kromě těchto dvou základních stavů mohou pravděpodobně nastat i další degradace měřených dat. Patří mezi ně nepřesnosti způsobené zpracováním dat z magnetometru. Tyto chyby ale nelze přímo zobrazit na polárním grafu.
Za účelem ověření kalibrace magnetometru je nutné zkonstruovat kartézský graf, který bude znázorňovat surová data z magnetometru. Zobrazené hodnoty by v tomto případě měly odpovídat kružnici, respektive kouli v prostoru.
Upravit logovací skript, tak aby zaznemanával surové hodnoty ze senzorů (tlakový spád a raw hodnoty magnetometru).
Vytvořit jupyter notebook, který nakreslí obě výše popsaná zobrazení.
Python nástroje, které by na to asi šly použít jsou tyhle:
Zpracování teploty z anemometru zřejmě obsahuje nějakou chybu. Která způsobuje, že teplota je za nižších teplot nesmyslná.
Tohle anemometr ukazuje při vnější teplotě okolo 10 stupňů.
0886; 2020-11-16T15:22:14.016948; Dp: +0.00 [Pa]; T: 210.472 [degC]; MAG_HDG: +78.59; SPD_W_DP: +0.00 [km/h]
0887; 2020-11-16T15:22:14.076994; Dp: +0.00 [Pa]; T: 210.424 [degC]; MAG_HDG: +78.62; SPD_W_DP: +0.00 [km/h]
0888; 2020-11-16T15:22:14.142151; Dp: +0.00 [Pa]; T: 210.376 [degC]; MAG_HDG: +78.53; SPD_W_DP: +0.00 [km/h]
0889; 2020-11-16T15:22:14.212157; Dp: +0.00 [Pa]; T: 210.472 [degC]; MAG_HDG: +78.54; SPD_W_DP: +0.00 [km/h]
0890; 2020-11-16T15:22:14.276800; Dp: +0.00 [Pa]; T: 209.897 [degC]; MAG_HDG: +78.61; SPD_W_DP: +0.00 [km/h]
0891; 2020-11-16T15:22:14.346179; Dp: +0.00 [Pa]; T: 210.472 [degC]; MAG_HDG: +78.61; SPD_W_DP: +0.00 [km/h]
0892; 2020-11-16T15:22:14.417284; Dp: +0.00 [Pa]; T: 210.424 [degC]; MAG_HDG: +78.63; SPD_W_DP: +0.00 [km/h]
0893; 2020-11-16T15:22:14.482254; Dp: +0.00 [Pa]; T: 210.424 [degC]; MAG_HDG: +78.65; SPD_W_DP: +0.00 [km/h]
0894; 2020-11-16T15:22:14.544916; Dp: +0.00 [Pa]; T: 210.472 [degC]; MAG_HDG: +78.68; SPD_W_DP: +0.00 [km/h]
0895; 2020-11-16T15:22:14.601937; Dp: +0.00 [Pa]; T: 210.376 [degC]; MAG_HDG: +78.68; SPD_W_DP: +0.00 [km/h]
0896; 2020-11-16T15:22:14.659344; Dp: +0.00 [Pa]; T: 210.136 [degC]; MAG_HDG: +78.69; SPD_W_DP: +0.00 [km/h]
0897; 2020-11-16T15:22:14.729835; Dp: +0.00 [Pa]; T: 210.376 [degC]; MAG_HDG: +78.70; SPD_W_DP: +0.00 [km/h]
0898; 2020-11-16T15:22:14.800006; Dp: +0.00 [Pa]; T: 210.089 [degC]; MAG_HDG: +78.72; SPD_W_DP: +0.00 [km/h]
Problém se týká teploty měřené senzorem ICM20948
Aktuální kryt PCB má z předu kruhový průřez
Důvodem k tomu, je získání dostatečného prostoru pro montáž PCB. Tento prostor však zřejmě stále není úplně dostatečný jak ukazují poslední pokusy s tiskem krytu.
PCB narušuje vrstvy v přední části krytu
U šroubů není možné vytisknout dostatečně kvalitní stěnu a most:
Jedním z řešení tohoto problému může být deformace kapkového krytu pomocí transformace scale, nebo resize.
Použití takové transformace by umožnilo získat větší šířku kapky v ose X bez zvětšování její výšky.
Pro případ získání prostoru pro šrouby je možné šrouby natočit v krytu od PCB tak aby byl u hlaviček šroubů získán větší prostor na materiál krytu. Šrouby pak nebudou rovnoběžné ale sbíhavé.
Trubičky tlakového snímače SPD33 nejsou zarovnány s prostředkem PCB. V důsledku toho je plošný spoj se snímačem pod víčkem na křivo a zřejmě vždycky netěsní.
Pro uchycení víčka nelze použít původně plánované šrouby M3x12mm
V důsledku zvětšení průměru kanálku pro vodiče (který teď umožňuje protáhnout vodiče i s kontakty), došlo k odstranění dosedací plochy trnul ložiska.
Nově je tak snadné otočný díl narazit na trn ložiska tak, že drhne. Navíc odstranil i část boční stěny, takže otočný díl se na ložisku dovede viklat.
Řešením současného stavu zřejmě je trochu precizněji vyřešit napojení kanálku vodičů na otvor pro trn ložiska. Otvor pro trn ložiska tak musí končit osazením, které bude omezovat zasunutí ložiska tak, aby byl umožněn prostup vodičů, ale zároveň nesmí být ložisko zasunutu tak hluboko, aby mohlo drhnout.
Představa o tvarovém provední spoje je nakreslena v řezu na následujícím obrázku:
Na horní hranu ložiska tak dosedá tištěný díl, který ložisko obepíná i z boku. Vodiče pak prostupují užším otvorem do kanálku pro vodiče.
Kanálek je ve směru k ložisku zkosený, aby bylo možné bez potíží vytáhnout vodiče zpět i s konektory. (toto řešení je velmi podobné aktuálnímu provedení tlakových kanálků ke snímači)
Rozměry ložiska lze vyčíst z následujících měření:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.