logo

Változások az eredeti kiíráshoz képest:

  • Lehetőség van egy műhold (a pálya felett elhelyezett webkamera) használatára. <infó>
  • Amennyiben egy robot találatot kapott, saját 1 KHz-es fegyvere nem kapcsolható be illetve ha már működik azonnal kikapcsol. A robot támadható felületét jelző különböző frekvenciájú LED az infragyűrűn találat esetén szintén lekapcsolódik, így lehetőség van detektálni a sikeres 'lövést'. A 60s blokkolás után természetesen minden visszaáll eredeti állapotba.
  • Ha egy robot akarva vagy akaratlanul megáll egy csillagkapuban vagy piramisban, akadályozva ezzel egy másik csapatot a szabad közlekedésben - pontszerzésben, felszólítás után egy parancskiküldési idő (15s) elteltével szabaddá kell tennie az utat. Ellenkező esetben a robotot a saját kiinduló pontjára visszük.
  • A leírásban szereplő infra generátorok lelke a PIC 18F24K22 a mostani állapot szerint (2010.12) februárig beszerezhetetlen. Elkészült egy átirat a PIC18F1320 mikrokontrollerre. <kapcsolási rajz> <prociba égethető hex fájl> <forrás>. Természetesen bármilyen szinusz forrással (generátor, pc hangkártya + szinteltoló, RC oszcillátor) meghajthatóak az infra LED-ek. Az LM324 bemenetére a tesztáramkörön egy 0..550mV csúcstól csúcsig szinuszt kellett beállítani a potméterrel (lásd a rajzot), hogy minden egyes LED-en 10mA áram folyjon keresztül.
  • Surányi Péter készített egy alternatív infra generátor kapcsolást PIC16F54 processzorra. <kapcsolási rajz> <prociba égethető hex fájl> <program forrása részletes dokumentációval>. Segítségét ezúton is köszönöm.
  • Győrffy Robi infragenerátor panelterve egyoldalas smd verzióban. <panel> <beültetés>

 

- Nagy baj van! - Szólt O'Neill ezredes miután bezáródott mögöttük a csillagkapu. A termet jeges rémület töltötte be miközben a CSAPAT lassan kipakolta a miniatűr Rohde&Schwarz spektrumanalizátorokat. Bármit is őrizzenek ezek az apró szerkezetek a flash memóriájukban az emberiség jövője múlik a rajtuk található adatokon. Igaz lehet mindaz amit már évek óta sejtettek? Samantha csatlakoztatta az első analizátort a bázis termináljához. Szíve a homokóra minden pördülésére dobbant egyet, ahogy a download csík utat tört magának a végtelenbe. Történelmi pillanatként írják majd le amikor megjelent az első frekvencia-amplitúdó grafikon a monitoron. Ott volt a görbék tengerében leírva az emberiség egyetlen esélye. A titkos Goa'uld frekvenciák. - Tudják, hogy rájöttünk! Hatalmas flottát láttam elindulni a Föld felé. - sóhajtott az ezredes. - Úgy hat hónap múlva, talán május 14-én reggel 10-re érnek ide. - számolt hangosan Daniel. - Csak Ők segíthetnek. Elküldöm az adatokat. - döntött O'Neill és a faxhoz lépve tárcsázni kezdett: +36555...

Idén nem adjuk alább a világ megmentésénél. Keressük azt a legjobb, leghatásosabb földi technológiát melyet sikerrel vethetünk be a galád Goa'uld-ok ellen. A CSK-1 jelentése szerint 9 piramis űrhajó landol majd 5 különböző bolygón. Az általunk ellenőrzött világok között 8 csillagkapun lehet közlekedni. Négy csapat indul egyszerre a küldetésre és mivel a legjobbat keressük -és amúgy is csak egy maradhat- egymás ellen is 'harcolniuk' kell. A csapatok robotjait felszereljük az Ezredes faxában megadott adatok alapján kifejlesztett Goa'uld generátorokkal. Nézzük a részleteket:

Miért is kockáztatta életét a CSK-1? A titkos Goa'uld frekvenciák:

Ma már 100% tudjuk minden Goa'uld technológia egyedi sugárzást bocsájt ki. Az adatok elemzése után kijelenthetjük ez a sugárzás nem más mint az egyetemes infrafény hangfrekvenciás tartományban szinusz hullámmal modulált jele. Minden csillagkapu, piramis és robot egyedi frekvenciával sugároz. A modulációs spektrum 1KHz-től indul és 600Hz lépésekben 16KHz-ig tart. Ez összesen 26 különböző objektumot illetve funkciót jelent.

Szemléltetve: ha veszünk egy teljesen hétköznapi infraledet (amilyet pl. a TV távirányítója is tartalmaz) és a dióda közel lineáris tartományában egy szinusz jelet kötünk rá egy 33 ohmos ellenálláson keresztül, akkor egy hasonlóan közönséges fototranzisztorral 'venni' tudjuk ezt a jelet. Az oszcilloszkópon figyelve a szinuszhullám amplitúdóját az függ az adótól való távolságtól illetve a két alkatrész térbeli pozíciójától. Egy sávszűrővel(hardware csoport)vagy Fourier analízissel(software csoport) avagy mindkettő egyszerre kiszűrhető a számunkra fontos forrás jele. Az irányát a jel maximuma (szenzor iránya) távolságát a jel nagysága hordozza.
Szerencsénkre a Goa'uld-ok szinusz hullámot használnak így nem keletkezik interferencia és arra is ügyeltek nehogy az egyedi frekvenciák egymás felharmonikusai legyenek.

Az öt világ:

A tornacsarnokban felépítjük a lenti képen látható pályát. Az elmúlt évekhez képest annyi a változás, hogy a pályán belül is található palánk illetve idén első alkalommal nem lesz 'marsi' felszín. Ennek részben oka, hogy a felújított tornaterembe amúgy sem lehetne behozni követ-homokot. A pálya talaja parketta mintázatú, szélein enyhén gyűrődött linóleum. A 2009. évi versenyről készült képeken remekül tanulmányozható. A csillagkapukat és piramisokat vékony vezetékeken tápláljuk ennivalóval ami szintén pár milliméteres huppanókat jelent.

map

 

A verseny menete:

A csapatokat egy program sorsolja négyes csoportba. Egy küldetés ideje 15-20 perc. A nap folyamán a versenyen elindult csapatok száma alapján egy csapat akár 3-6 alkalommal is összemérheti technológiája fejlettségét a többiekkel. Az első kör után (minden csapat elindult a pályán 1x) a legtöbb pontot elért csapat a legkevesebb pontot elérő csapattal és a ponttáblázat számtani közepén elhelyezkedő 2 csapattal kerül össze. A második legtöbb pontot elérő a második legkevesebb pontot szerzett csapattal plusz a ponttáblázat közepéről +2 csapat és így tovább. Hasonló pontszám esetén a csapat nevének abc sorrendje dönt. Három-négy forduló után a 8 legtöbb pontot elért csapat külön döntőt vív a győzelemért. Előfordulhat, hogy egy csapatnak egymás után kell pályára lépnie így a robot energiaellátását erre az esetre méretezzük vagy gondoskodjunk tartalék aksiról. A megszerzett pontok folyamatosan összeadódnak így a döntőbe jutott csapatok extra pontokat szerezhetnek.

A robotok elhelyezésére és felkészítésére 5 perc áll rendelkezésre. A roboton az általunk biztosított jeladó és CPU panel felszerelésére 15 perc lesz biztosítva (amíg a többi csapat versenyez -> 2x4 garnitúra, lásd később)). Aki nem tud elindulni az a csapat a körből kimarad.
Minden csapatnak van egy saját világa. Az itt landolt piramis űrhajók deaktiválása 1 pont. Ehhez mindösszesen csak át kell menni a piramison. Érvényes a pont ha a robot két különböző oldalon megy be és jön ki. Tehát a csak bekukkantok nem számít. Minden más csapat világán elhelyezkedő piramis 3 pont. A központi Föld-ön leszállt űrhajó 5 pontot ér. Minden csapat pontot szerezhet az összes piramisból függetlenül attól valaki megelőzte-e már, de egy piramis a küldetés alatt csak egyszer ér pontot. A küldetés végén az összpontszámhoz hozzáadódik minden piramis aktuális pontszáma melyen az adott csapat utoljára áthaladt így 'birtokolva' azt.

Tehát pl. ha valaki a küldetés ideje alatt egyszer áthalad a földi piramison az 5 pont és ha a küldetés végén ő volt az utolsó aki áthaladt rajta akkor az még 5 pont. Ha a küldetés közben valaki elbitorolja tőle a piramist akkor vissza lehet menni és visszaszerezni azt a 5 pontot. Ugyanez érvényes az összes piramisra értelem szerint 1 vagy 3 pontért.

Természetesen a verseny alatt egy program grafikusan nyilvántartja kinek hány pontja van, ki mennyi pontot kap ha vége a küldetésnek és melyik piramist ki 'pusztított' el utoljára. Ez ki lesz vetítve egy projektorral és be lesz vetve a jó öreg 'marsi' műhold is dokumentálás céljából.

A verseny alatt a robotok véletlen ütközése úgy gondolom elkerülhetetlen és erre a robotokat mechanikailag fel kell készíteni, de a szándékos ütközés tiltott és a körből való kizárást eredményezi. A robotok általunk (mi biztosítjuk a hardvert) fel lesznek szerelve egy infraágyúval mellyel megbéníthatjuk a másik robotot 60 másodpercre és további 5 pontot gyűjthetünk. Egy robotot a küldetés alatt többször lehet blokkolni, de pont csak az első sikeres támadásért jár. Összesen tehát 15 pont szerezhető így. Részletek a robot leírásnál.

Idén a csapatok folyamatosan látják a pályát nincs takaró palánk. Az irányítás viszont hasonló az elmúlt évekhez. Bármely EMBERI parancsot utasítást mely a robot vezérlésével kapcsolatos 15 másodperccel késleltetni kell és a késleltetés folyamatát a vezérlő programban jól láthatóan meg kell jeleníteni! Példaképpen a menj előre 1 métert parancsot a robot csak 15 másodperc múlva hajthatja végre, ha ez egy EMBERI utasítás. Ha egy szoftver önállóan dönt a robotról érkező jelek alapján akkor nincs késleltetés. Lehetőség van a látottak alapján áttervezni az útvonalat stratégiát váltani, de ezeket az utasításokat is késleltetni kell.

A nap folyamán végig lehet barkácsolni, programozni, módosítani a roboton.

Összefoglalva a pontozási rendszert:

Első áthaladás a piramison saját világban 1 pont
Első áthaladás a piramison más csapat világában 3 pont
Első áthaladás a piramison a központi Föld területen 5 pont
   
A küldetés végén az adott piramist utoljára deaktiváló csapat  
Saját világban található piramisért 1 pont
Más csapat világában található piramisért 3 pont
A földi piramisért 5 pont
   
Más csapat robotjának első blokkolása infraágyúval 5 pont
   
Elméleti elérhető maximális pontszám egy küldetés alatt 65 pont


Objektumok a pályán:

Goa'uld piramis:

piramis

Csillagkapu:

csillagkapu

A fekete szigetelőszalag csíkok az automatikát segíthetik mindkét objektumnál a helyes útvonal követésében. A legkézenfekvőbb megoldás egy lefelé irányuló infra adó-vevő pár alkalmazása, de kötelező úgy leárnyékolni, hogy ne befolyásolja a jeladó rendszert (oldalra nem sugározhat). A fehér kartonpapír széleit átlátszó szigetelő szalaggal rögzítjük a linóleumon. Mielőtt valaki megkérdezi : igen a csillagkapu nem dekoráció csak azon át lehet az egyik világból a másikba menni->birodalmipalánkátlépegető most nem jó.

Goa'uld generátor a csillagkapun és a piramison:

Sok próbálkozás után egy mikrokontrolleres dds szinuszgenerátort építettünk. A panelon be lett tervezve egy 16MHz kvarckristály, de a mérések alapján a processzor belső oszcillátora kellően pontos a 64MHz órajel ellenére is! A MicroChip PIC 18F24K22 áramkörét az ára mellett többek között ezért is választottuk, de gondoltunk a későbbi felhasználhatóságra is. A modulációs frekvencia jumperrel állítható a kívánt értékre. A frekvenciák pontossága +/- 2Hz.

dds

A generátor kapcsolási rajza pdf-ben.

A frekvenciák kiosztása:

Forrás
f
jumper (j4..j0)
 
csillagkapu1
6.4 KHz
01001
csillagkapu2
7 KHz
01010
csillagkapu3
7.6 KHz
01011
csillagkapu4
8.2 KHz
01100
csillagkapu5
8.8 KHZ
01101
csillagkapu6
9.4 KHz
01110
csillagkapu7
10 KHz
01111
csillagkapu8
10.6 KHz
10000
 
piramis1
11.2 KHz
10001
piramis2
11.8 KHz
10010
piramis3
12.4 KHz
10011
piramis4
13 KHz
10100
piramis5
13.6 KHz
10101
piramis6
14.2 KHz
10110
piramis7
14.8 KHz
10111
piramis8
15.4 KHz
11000
piramis9
16 KHz
11001

A versenyben felhasznált vezérlők mikrokontroller programját Molnár Károly barátom írta aki velem ellentétben anyanyelvi szinten beszéli a Pic-ek assembly nyelvét és rá jellemző módon alapos munkát végzett amit ezúton is köszönök.

A program a következő opciókban tölthető le:

- közvetlen a processzorba égethető HEX fájl kvarcoszcillátorral

- közvetlen a processzorba égethető HEX fájl belső oszcillátorral

- MicroChip C18 forrás

A panelterv a teljesen ingyenes és szerintem nagyon jó KiCad rendszerrel készült. A szükséges fájlok modulok és könyvtárak letölthetők <innen>.

Természetesen bármilyen wien-hidas, rc fázistolós oszcillátorral, gyári generátorral, PC-vel meghajthatóak a LED-ek a lényeg a közel lineáris tartomány és hogy a 'vevőtranzisztoron' a kapott jel nagyvonalakban szinusz legyen.

<Idemásolok> egy első generációs goa'uld generátorról készült fényképet. Követve a képen látható megoldást pillanatok alatt elkészíthetünk egy meghajtó modult amire csak egy generátort kell csatlakoztatnunk.

Készítettem egy kis videót mely bemutatja egy Goa'uld iránytű működését:

 

 

Robot és a goa'uld generátor:

robotrajz

Komoly dilemma a mechanikára vonatkozó szabályok eldöntése. Minden évben nagy kérdés a gyári mechanikák (komplett RC autók, tankok.. LEGO alkatrészekből épített robotok) használata. Idén is korlátozással használható gyári mechanika melyet alvázig le kell bontani. Minden ami megmaradhat az max. a kormánymű a hajtás meg a kerekek. A LEGO egy rendkívül jó dolog, de ebben a versenyben nagyon rontaná az esélyegyenlőséget ezért használata nem támogatott. Túl komplex rendszert ad amivel rengeteg fejlesztés megúszható.

Mint a coreldraw-ban:) készült rajzon is látható a robotra kötelezően építeni kell néhány felfogatási pontot. A robot elejére szereljük a 7x10cm CPU panelt amit négy 3mm-es csavar rögzít 1cm-es távtartó gyűrűn át. Ez az áramkör saját akkumulátorral rendelkezik és vezérli a robot tetején található infragyűrűt:

infra1

Az infragyűrű kapcsolási rajza pdf-ben.
Egyoldalas panelterv Bús József barátom egeréből <KiCad>
külön köszönet a 3D alkatrészekért és a tanításért meg a szponzorálásért NG PROJECT

A gyűrű a LED-ekkel lefele lesz felszerelve, hogy a panel árnyékolja a nem kívánt sugárzást. A gyűrű hordozója a földől számítva 20cm magasra kerül és négy 3mm-es csavarral rögzíthető 2cm hosszú távtartón keresztül (a csavarozási pontokat így 18cm magasra kell elhelyezni). Minden felfogatási pont 'anya'. Lesz idő a verseny előtt a próbára és ha szükséges az esetleges átalakításra. A gyűrű a robot hátoldalára mutató LED-je a többi LED-től eltérő frekvencián modulált. Ez a LED mutatja melyik a robot támadható felülete.

A robotok sugárzási frekvenciái:

Robot generátorok
f
jumper
'A' robot infraágyú
1 KHz
00
'A' robot goa'uld generátor 7db. LED
1.6 KHz
"
'A' robot goa'uld generátor 1db. LED támadható oldalon
2.2 KHz
"
'B' robot infraágyú
1 KHz
01
'B' robot goa'uld generátor 7db. LED
2.8 KHZ
"
'B' robot goa'uld generátor 1db. LED támadható oldalon
3.4 KHz
"
'C' robot infraágyú
1 KHz
10
'C' robot goa'uld generátor 7db. LED
4 KHz
"
'C' robot goa'uld generátor 1db. LED támadható oldalon
4.6 KHz
"
'D' robot infraágyú
1 KHz
11
'D' robot goa'uld generátor 7db. LED
5.2 KHZ
"
'D' robot goa'uld generátor 1db. LED támadható oldalon
5.8 KHz
"

robotcpu

A CPU panel <kapcsolási rajza> <mikrokontroller programok> <KiCad fájlok>

A robot hátuljára kerül egy 3x3cm nyáklemez ami az ellenséges robot 1kHz-es infraágyú sugarát érzékeli. Rögzítése két 3mm-es csavarral történik távtartó nélkül és egy vékony kábellel csatlakozik a CPU panelre. A CPU panel a hátsó érzékelő nem számít bele a a robot körvonalának max. 35x25cm méretébe és saját mechanikai védelemmel rendelkezik (egy szintig:)). Az infraágyút távolról tudja a csapat bekapcsolni egy magas H szinttel (optocsatolós leválasztás a CPU panelon, L-H élt érzékel a bemeneten 470 ohm sorban -> 3.3V..5V). Egy lövés 30 másodpercig tart majd 30s szünet. Egy küldetés alatt 5 lövés lehetséges összesen. A fegyver hatótávolsága kb. 40cm és minden küldetés előtt kalibráljuk. A tüzelést hangeffektus kíséri, találat esetén egyértelmű akusztikus jelet ad a CPU panel. A CPU panel ekkor egy tiltó (azonnali állj) jelet küld a robot saját elektronikája felé. Gyakorlatilag ez egy optocsatoló tranzisztorának emitter-kollektor kivezetése. A 60 másodperc alatt ez a tranzisztor nyitva lesz. Ezt a jelet érzékelve kell mozdulatlanná tenni a robotot (ha egyáltalán még tud mozogni:)). Magyarázat rajzban:

infrafegyver

A robot és a csapatok közti kommunikáció bármilyen vezeték nélküli nem infravörös tartományban üzemelő megoldás lehet. A sikeres részvétel véleményem szerint jelentős részben a megbízható és stabil adatátvitelen múlik majd. Zavar szempontjából nem fog különbözni egy igazi ipari környezettől. Szándékolt zavarás természetesen nem etikus és tilos is.

Összefoglalva a robotra vonatkozó legfontosabbakat:

A CPU panelt az infragyűrűt és a támadást érzékelő panelt mi adjuk. A CPU panelre a csapat(robot) elektronikájából kettő vezérlőjel megy. Az egyik aktiválja a robot ágyúját (2 eres vezeték->optocsatoló diódájára). A másik jel a sikeres támadást érzékelő jelzés (2 eres vezeték->optocsatoló EC). Az ágyú-elektronika az idő a lövések száma a találat jelzése és a hangeffektus a CPU panel dolga. Mindösszesen a megadott csavarozási pontokat kell biztosítani. Minden elem 1:1 kinyomtatható <gyűrű> <cpu panel> <hátsó lemez> Kivágva ellenőrizhetőek az elkészített felfogatási pontok. A robot méretére vonatkozó 35x25cm méretkorlátba a robotra szerelt érzékelők (pl. ütközés) nem számítanak bele. A robot magassága értelem szerint nem lehet 24cm-nél nagyobb ellenkező esetben nekiütközne a generátoroknak és vége lenne a világnak.

Első olvasásra kicsit bonyolultnak tűnhet ez az egész, de biztos vagyok benne egy kis agytorna után sok életképes megoldás felszínre kerül majd. Nem tartom kizártnak születnek majd olyan robotok melyek szabályosan látni fognak a pályán és némi mesterséges intelligenciával megfűszerezve könnyedén legyőzik a Goa'uld és a sokkal keményebb Humán ellenfeleiket.

A fejezet végén leírnám miért is kellett alapjaiban átszervezni a versenyt. Az 5. versenyre 42 csapat jelentkezett. Ha mindenki el tudott volna készülni a két pálya ellenére is reggelig tartott volna a verseny. Egyetlen megoldás, hogy több csapat egyszerre versenyzik. Ebben az esetben viszont a műhold elosztása okozott volna gondot. Itt elsősorban nem a szűk sávszélességre, hanem a kamera beállításaira (fényerő kontraszt..) gondolok (bizonyos feltételek mellett utólag engedélyezve lásd legfelül). A mostani infrajeladók alkalmazása lehetővé teszi, hogy szinte teljesen autonóm robotot lehessen építeni és mindenki függetlenül hozzáférhessen a rendszerhez. Megmaradt a kézi vezérlés ami igazán jól fog jönni a váratlan pillanatokban. Ugyanúgy átfogja a feladat a mechanika-elektronika-programozás területét, mint az elmúlt években. Mivel engedélyezett az egész napi barkácsolás, egy nagy csarnokban leszünk mindannyian (ezért nem Budapest) és ugyanúgy lehet péntek délutántól egész éjjel tesztelni meglesz a verseny szokásos alaphangulata. A lányokat Ti hozzátok a sört idén is én állom.

A verseny díjazása teljes egészében a megszerzett pontoktól függ. Most (2010.11.07) nem tudom anyagilag mit fog érni egy pont. Megtörténhet, hogy minden idők legszegényebb versenye elé nézünk. Mindenesetre mi megmozgatunk minden követ, hogy a befektetett munkának kézzel fogható eredménye legyen.

Az elsődleges jelentkezési határidő február 15 volt. Mivel a verseny idei struktúrája lehetővé teszi igazából a verseny végéig lehet jelentkezni bár nem bánom, ha küldtök egy levelet a sör miatt.

Bármely kérdés esetén írjatok:

Sipos Attila