Archívum: 2017 június


2017. Június 26.

Város koordináta és térkép letöltés

írta: Xaint

Ma, a távirányító-vevő páros programozása közben arra gondoltam, milyen király lenne, ha a távirányítón a szimpla GPS hosszúsági és szélességi koordinátákon kívül a legközelebbi város neve is megjelenne.

Mivel SD kártya olvasó van a távirányítóban és a hajóban is, így az adatok tárolása megoldott. Már csak Magyarország városainak listájára volt szükségem, azok GPS koordinátáival együtt.

Miután olyan letölthető csv / txt fájlt, ami készen tartalmazná a szükséges információt, néhány perc keresgélés után sem találtam, arra gondoltam más utat választok. Ekkor találtam rá a latitudelongitude.org/hu nevű oldalra. Ez tartalmazza ugyan a városok neveit (nem mindet) és azok hosszúsági és szélességi fokait, ám ezt több oldalra tördelve.

Így gondoltam nem keresgélek tovább, hanem inkább összedobok egy kis alkalmazást C#-ben, ami bejárja az oldalt és lementi a szükséges információkat egy txt-be:
 


Persze amíg a programozással szöszöltem, az egész ötletet továbbgondoltam. Mi lenne, ha a kijelzőn az adott helység kis térképét is meg tudnánk nézni. Persze semmi "multiple zoom level" meg ilyesmi, ahhoz az Atmega644P már kevés lenne... (Bár annyit talán még bele lehetne erőszakolni a mikrovezérlőbe, hogy ha pl. egy adott településen, az adott tóról van közeli műholdképünk, akkor a hajó pozícióját a műholdképen is meg lehetne jeleníteni. Talán.. angel)

Mindenesetre statikus térképeket van lehetőségünk lekérni a Google-től, a Google Static Maps API használatával, ami egy alap felhasználónak 640x640 pixeles maximum képfelbontást és 25.000 térképletöltést engedélyez 24 óránként, ingyen. Nekünk egy 2"-os 160x128-as felbontású kijelzőnk van, és a latitudelongitude.org adatbázisa szerint pedig 276 városunk. Az előírt kvóta betartásával nem lenne gond...

Miután a latitudelongitude.org oldalról sikerült bekebelezni a szükséges adatokat, a térképrészletek letöltése sem volt annyira nehéz. laugh

A kis képek letöltését az alábbi kóddal oldottam meg:

foreach (ListViewItem i in listView1.Items)
	{
	string outFile = System.IO.Path.Combine("images/hybrid", i.SubItems[4].Text + "_hybrid" + ".png");
	System.IO.Directory.CreateDirectory("images/hybrid");

	// Download file
	var request = (HttpWebRequest)WebRequest.Create("https://maps.googleapis.com/maps/api/staticmap?center=Hungary," + i.SubItems[1].Text + "," + i.SubItems[0].Text + "&zoom=11&size=160x128&maptype=hybrid&key=YOURKEY");
	request.Proxy = null;
	request.UserAgent = @"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36";
	using (var response = await request.GetResponseAsync())
	{
	    using (var reader = new BinaryReader(response.GetResponseStream()))
	    {
	        // Read file 
	        byte[] bytes = await reader.ReadAllBytes();

	        // Write to folder 
	        using (var fs = new FileStream(outFile, FileMode.Create))
	        {
	            await fs.WriteAsync(bytes, 0, bytes.Length);
	        }
	    }
	}
	this.Invoke(new Action(() => progressBar2.PerformStep()));
	}

 

A hibrid, vagyis a műholdképek letöltése mellett még az egyszerű térkép (roadmap) verziót is lekaptam, ha már ott jártam:


 

Update: Közben úgy tűnik, egy problémát mindenképpen orvosolnom kell majd a későbbiekben. A távirányítóban ugyanis a kijelző, az nrf24l01 rádió modul, és az SD kártya olvasó is SPI buszon keresztül kommunikál a mikrovezérlővel. Mivel eddig az SD kártyával nem nagyon foglalkoztam (leszámítva a bekapcsoláskor egy egyszerű írás/olvasás tesztet txt-be), így semmi problémát nem vettem észre. Ám, a kijelző inicializálása után, és a rádiómodul használata közben történő SD kártya műveletek kifagyasztják a mikrovezérlőt surprise. Valószínűleg a kijelzőhöz használt, agyonoptimalizált függvénykönyvtár lesz a ludas. Ennek sajnos még utána kell járjak. (Az eredeti terv, mármint az adott GPS koordinátához tartozó városnév megjelenítése persze megoldható, hisz a hajón is van SD kártya (ott működik is), és az onnan beolvasott városnevet egyszerűen átküldhetjük rádión a távirányítóra, amikor az szükséges.)



2017. Június 16.

Virágzó tavirózsa + vízszintmérő adatok

írta: Xaint

Május 20 körül egy megszűnő kerti tóból tavirózsákat telepítettünk a tó különböző pontjaira (utólag is köszi Zoli! laugh), amelyek olyannyira jól érzik magukat az új helyükön, hogy most csodálatos virágba borultak. Ez a virágzás ha minden igaz, késő őszig tart majd. Alig várom, hogy jobban elszaporodjon, biztosan gyönyörű szép lesz.

 

 

 


Bónuszként viszont, ha már arra jártam, lementettem a kis vízszintmérő berendezés adatait. Jelentem, 26 nap után is működik és végzi a dolgát, íme:
 


A vízszint emelkedése a becsléseinkhez képest picit lassabb ütemben történik, de ez egyelőre nem jelent gondot.

Címkék: ,


2017. Június 08.

18-napnyi adat a Durba-tóról

írta: Xaint

 

Ma újfent kimásoltam a kombinált szenzor SD-kártyájáról az adatokat, a belőle készített grafikonon pedig megjelöltem néhány érdekességet.

 


 

Az ultrahangos távolságmérő kezdeti rendetlenkedése mellett felfedezhető rajta a vízhőmérő szonda beázása, a Kis-Durba vizének átemelése az új tóba, két lehűlést hozó csapadékzóna átvonulása, stb. smiley