Cumpărături în București, experiențe personale

A venit vremea să ne ocupăm și de Eurobot, și pentru că anul acesta vrem un robot solid, făcut bine, avem nevoie de niște materiale de construcție mai tari ca plasticul și scotch-ul dublu adeziv (deși, sunt convins că scotch-ul va rămâne permanent în inventarul echipei noastre :) ). Pentru pereți și carcasă, am vrut inițial să folosim plexiglas, dar Dan a venit cu o idee mai bună, și anume să folosim policarbonat. Policarbonat-ul este un material special, foarte rezistent, din care sunt făcute, spre exemplu, CD-urile. Policarbonatul celular se folosește acum mai peste tot – unii îl folosesc peste poarta de fier forjat să nu vadă trecătorii în curte, alții îl folosesc la uși la baie, și în unele locuri a luat locul tablei ondulate. E un material relativ ușor, foarte rezistent și mai ușor de prelucrat decât metalul.

Există și o variantă mai rigidă de policarbonat, policarbonatul compact, care e exact ca plexiglas-ul, doar că e ceva mai rezistent. Aici, cu policarbonatul compact începe povestea mea despre o zi de cumpărături prin București. Prima firmă pe care am găsit-o care vinde așa ceva (pentru că la Brico nu este) era în Pantelimon. Ce-am zis (ce zic toți albaiulienii despre Pantelimon, sunt convins) – blocuri, băieți de cartier … Dar pentru că blocuri și băiețași am mai văzut, am luat echipa și pe la ora 12 jumate am plecat spre ceea ce noi credeam că este un depozit.

Dan se uitase în prealabil pe hartă, și cu o scurtă escală la Eroilor am luat troleu 69 spre Pantelimon. La nici 3 stații de la Eroilor se urcă vreo 10 – 15 aurolaci, care încep să se înghesuie în spatele mașinii spre față. Că se înghesuiau era o chestie, dar mirosea prin tot troleu a prelandez (nu știu daca așa miroase aurolacu ăla ce-l bagă-n ei, da era some strong shit). Ne-am dat jos (noi și tot restu lumii) undeva pe la Foișorul de Foc, toți cu expresii de-alea de genu ”ai uitat unde mergem? la ce să te aștepți la altceva?”. Am luat altceva (85, parcă) până în Baicului.

Eu vedeam Baicului așa, ca un ”hood” din filmele cu gangsta. În schimb, când am ajuns acolo, aproape imediat ne-a cuprins așa sentimentul apăsător că ceva nu este în regulă cu locul ăla. Am mers spre strada cu depozitul, am trecut peste o cale ferată, dar nu ne simțeam deloc în mijlocul unui oraș mare, și apoi, am luat-o la dreapta pe o străduță de am ajuns direct la sat. Străduța noastră se termina direct în ALTĂ cale ferată. La 1km în stânga și în dreapta se vedeau blocurile mari ,trademark Bucureși. Dar noi eram la țară: case cu acareturi de tot felul, dintre care una cu un etaj și o scară exterioară înghesuită cumva acolo, cu numele depozitului pe care îl căutam noi pe ea.

Tot locul, toată treaba era extrem de spookie. Dar aveam adresa, aveam numele firmei, se potrivea, și ne-am făcut curaj și am intrat. Oamenii de fapt chiar aveau acolo depozit, și, într-un final, am reușit să înțelegem că de fapt materialul ăsta nu-i doar foarte mișto, ci și foarte scump (cam 3 milioane metru pătrat la 6mm grosime), dar le-am povestit oamenilor că suntem robotiști și ne-au vândut o fâșie de policarbonat cu reducere specială de studenți.

Necazul a fost că nu ne așteptam să fie așa scump și nu aveam bani. Am cerut indicații către cel mai aproape bancomat, și am luat-o în direcția aproximativă indicată. Am mai întrebat la un magazin la colțul străzii (care evident ne-a dat alte indicații), și am ajuns destul de repede in the middle of nowhere, printre niște blocuri semipărăsite, niște străzi goale și gri, mărginite de aceeași cale ferată. Eram toți așa, cu urechile ciulite și parcă cu ochii în toate părțile, aveam sentimentul ăla ciudat că ceva nu este de loc în regulă și că noi nu prea căutam bine ce căutam pe unde eram (și nu mă refer la bancomate). Am întâlnit o singură persoană pe strada, am întrebat de bancomate și ne-o zis ca nu se există așa ceva în fundul de lume unde eram. Până la urmă am luat o mașină (cred că tot la inspirația lui Dan) și am ajuns undeva la Doamna Ghica, de unde am scos banii, și ne-am întors cu același autobuz de unde am plecat, să plătim.

De menționat că la Doamna Ghica am văzut un câine, maidanez, de-ăsta de nici o rasă, care era cel puțin de două ori mai mare decât orice câine maidanez am văzut vreodată, îmi ajungea undeva la șold. Întorși să dam banii, pe strada rurală pe care era depozitul, unul din vecini ținea de un câine să nu scape din curte, un câine iarăși, imens. La ușa din spate a depozitului stătea de gardă, evident, un alt câine imens. Am luat placa, am zis mulțam și am băgat urgent talpă până la mașina care ne-a adus în „cartierul minunat”.

Cine a numit Bucureștiul Micul Paris, n-a fost decât pe Victoriei în zilele ei bune. Am fost la Paris, și nu-i așa. La un moment dat eu ziceam că Bucureștiul că seamănă cu Istambul-ul, sau mă rog, cu cum îmi imaginez eu Istambulul pentru că n-am fost încă pe-acolo, dar ce-am văzut joi nu seamănă cu nimic. Este doar ”o realitate crudă” din inima capitalei României și sper să nu mai am drum în capătul ăla de lume prea curând.

Back to working on the car

M-am întors la lucrul la mașină, în timp ce încerc, în paralel, să dau câte o idee și la planul pentru Eurobot. Avem momentan două idei, două strategii diferite, fiecare cu bubele ei, dar măcar, de azi avem toate pisele de care avem nevoie. Acum trebuie doar să ne hotărâm cum vrem să le punem laolaltă :)

Pentru mașinuță am mai lucrat la controller-ul de viteză. Am reușit până la urmă, după multe experimente mai mult sau mai puțin reușite, urmărind o idee a domnului profesor, să fac un driver pentru motorul cu perii (motorul de mișcare) al mașinuței, folosind relee de 8A pentru puntea H (pentru direcție) și un pe post de intrerupător (pentru PWM). Schema asta funcționează primind PWM de undeva, dar controller-ul mașinuței encodează și direcția, tot în PWM (adică factor de umplere 50% înseamnă full stop, 0 înseamnă înapoi și 100% înseamnă full înainte).

Ca să pot să-i dau controllerului meu ce are nevoie (un semnal PWM pur, și doi pini de control pentru direcție înainte / înapoi) am folosit un ATMega32, de care mai aveam de la alte proiecte mai vechi. M-am tot câcâit să învăț cum se face un PWM și marți sau miercuri m-am pus și am citit documentația de la ATMega, și am produs un PWM, apoi am folosit Input Capture Unit-ul (guess what that does) să traduc semnalul PWM de la PMS5005 (placa de control a robotului) într-un PWM și o direcție pentru controller-ul meu. Cu sprijinul lui Dan și al osciloscopului am trecut peste o parte din bug-uri, dar încă nu reușesc să variez PWM-ul de la ieșire corect în funcție de PWM-ul de la intrare. Dunno why yet, dar dacă există oameni care știu pitfall-uri în partea asta de Input Capture, please do tell!

im Wien

După cum ziceam și mai jos, am fost la Vienna, la RobotChallange. Am făcut cam 2 zile pe drum dus întors, am avut o zi de concurs și o zi de turiști. Concluzia pe scrut este că a fost extraordinar. Pentru detalii, citiți mai departe :)

Drumul

Pe scurt: 17 ore cu trenul. La clasă (adica în fund) ca studenții. Fun, dar greu.

Am plecat din București la 16:45, cu toții, deși era să-l uitam pe Adi acasă (o întârziat puternic :)). Ne-am pus instant pe povești și aproape că nu ne-am dat seama când s-o întunecat. Am stabilit cartierul general în vagonul restaurant, unde nu ne-am sfiit să scoatem niște prelungitoare și să tragem curent la toată lumea (de apreciat că omu de la vagonul restaurant n-o sărit la noi). La Alba am făcut o pauză și Dan și cu mine ne-am văzut cu părinții, eu am căpătat două lucruri neprețuite (Swiss-ul uitat acasă de ceva vreme și o sticlă de vin de Aiud care a ajutat puternic mai departe :P). Am încercat să îl mai sprijinim pe Dan la camera pentru robotul de Slalom, dar fără prea mare succes.

După Alba am intrat în vorbă (sau mai iute a intrat el în vorbă cu noi) singurul alt client al vagonului restaurant, un domn tânăr, cu care ne-am conversat un pic despre condițiile noastre în facultate și despre eventuale posibilități de finanțare dinspre UE, anul ăsta fiind ceva cu inovație și cercetare la UE. Optimismul lui mi s-a părut un pic cam exagerat și am presupus că nu a făcut facultatea în România, pentru că altfel n-avea cum să nu știe unele chestii de „bază” despre cât de greu este să obții bani printr-o instituție cum este Politehnica. Dar discuția a fost interesantă :D

Am ajuns în Vienna pe la 9, și ne-am găsit ușor drumul spre hotel pentru că Cip mai stătuse acolo cu altă ocazie. La cazare am aflat cu surprindere că recepționista era româncă (deși asta urma să devină un aspect comun al excursiei ăsteia, am interacționat cu mulți români acolo).

În tren
În tren
Ajunși în Vienna
Ajunși în Vienna

Ultimele pregătiri

După ce toată lumea a fost so fresh and so clean, am dat o tură scurtă prin centrul Vienei, pe o vreme destul de închisă (Cip și cu mine am fost eroi și am plecat fără geacă, lucru ce l-am regretat puternic după aia). Am mâncat scurt la un birt care părea uitat de timp pe undeva prin centru și ne-am întors la hotel să lucrăm la roboți. Evident, prima data a fost mai mult decât necesară o pauză de somn, pentru că eram deosebit de rupți. Ne-am pus pe urmă pe lucru, și am încercat să mai rezolvăm din problemele roboților. Micvs, Gia și Cornel au rezolvat din problemeler lor, Simina cu Matei și Adi au înnebunit lângă robotul lor, a cărui constanță în mișcare era egalată doar de constanța numerelor de la loto. Aici a venit foarte la îndemână vinul de Aiud, care a trecut atmosfera dintr-una încordată, într-una foarte foarte fun :)

Robotul nostru a fost pe departe cel mai weirdo, și după ce Dan l-a lăsat din mână pentru o pauză binemeritată am încercat și eu să fac un pic de debugging. Concluzia, tristă și de neînvins a fost că firmware-ul aduna două numere pozitive și dădea un număr negativ. Nu depășiri, nu greșeli. Doar încăpățânare de firmware. După ce toată lumea a adormit la un group-screening de Gray’s Anatomy, we called it a night.

La hofburg. A se observa cât de gros suntem îmbrăcați
La hofburg. A se observa cât de gros suntem îmbrăcați
Tot la Hofburg
Tot la Hofburg
Toată gașca
Toată gașca

Concursul

RobotChallange 2009 a fost considerabil mai mare ca număr de roboți decât ediția anterioară. Spațiul alocat lor a fost însă daca nu la fel de mare, poate chiar un pic mai mic. Rezultatul a fost o învălmășeală generală de oameni, de la puști de 10 ani la oameni trecuți de prima tinerețe. Atmosfera a fost însă foarte foarte ok. Am raportat live de la eveniment pe blog-ul echipei, și nu o să reiau aici. Pe scurt, humanoidul tinereilor a luat argintul și puck collector-ul Giei și al lui Micvs au luat bronzul. La finalul concursului, am fost invitați de organizatori la o cină și o cană de poveste la parterul clădirii, care a fost deosebită. Am stat împreună cu toții și am mâncat un șnițel de la mama lui, și am băut ceva mai mult de O bere nefiltrată de căciulă. Am plecat acasă pe la 9 seara, fericiți, împliniți și cu burta plină. Seara ne-am făcut noi curaj să bem o bere, dar nu numai că scorurile de la hotel erau exorbitante, s-a și închis barul pe la 23. Oricum, mai mult nu cred că țineam nici noi :)

Cu Dan
Cu Dan
Cu ceva în gură
Cu ceva în gură
Consultări
Consultări

Zoo și o masă copioasă

A treia zi ne-am împărțit în 2, Dan cu Roxănica și cu mine am hotărât să mergem la Tiergarten (parcă așa îi zice, aka Grădina Zoologică) și restul au vizitat palatul Schombrun. Grădina Zoologică din Vienna este absolut deosebită, cu toate că gândul că animalele alea îs în cuști și vin șoarecii să se uite la ele și să-și facă poze cu ele nu e tocmai ok. Am văzut animale de tot soiul, ne-am chiorât în insectar la tot felu de gâze interesante și greu de deosebit de plantele pe care stăteau, am prins ora de masă a pinguinilor și o girafă a vrut să-i lingă obiectivul lui Dan. N-am reușit să vedem chiar întreagă grădină zoologică, pentru că la 3 aveam întâlnire cu domn’ profesor și ne așteptau și ceilalți.

Atracția zilei a fost cârciuma de care ne-a tot povestit domnul profesor înca de acasă. Undeva pe lângă Belvedere, la strada, un local aparent ca oricare altul, până în momentul în care s-a deschis ușa. Eu cum am intrat, m-am simțit exact ca într-o banda desenată cu Asterix și Obelix, iar când chelnerul a pus în fața mea și a lui Cip o halcă de carne de porc cu două cuțite înfipte în ea, apropierea de Asterix și Obelix care stăteau întinși pe câte un pat lângă o masă cu câteva schelete de mistreți între ei a fost maximă :). Localul avea și berărie proprie, de unde am și băut căteva beroase buuune.

Unde puteam să mergem după o masă serioasă decât la ringhișpil? Cu burțile pline am dat o tură prin Prater, parcul de distracții al Vienei, unde după ceva căutare am găsit o mașinărie demnă de întreg grupul și am hotărât să ne dăm în  ea :) Cred că cea mai bună descriere a sentimentului din drăcovenia aia este că te simți ca într-un mixer. Dintre toți, Micvs s-a resimțit cel mai tare, dar nici Roxănica nu era mai puțin verde la coborâre. Ne-am mai plimbat puțin, ne-am dat în carturi și o parte au mers și s-au dat în roata mare din Prater, care este un impresionant monument, din aceeași generație cu turnul Eiffel.

Am încheiat seara la un foarte primitor Irish Pub, chiar în centrul Vienei. Ne-am și tras în chip în spatele barului, ne-am simțit excepțional. Am mai încercat noi să bem o bere acasă după ce-am plecat din pub cu ultimul tramvai, dar nu mai era posibil, eram toți deosebit de obosiți (în special eu :P).

A se observa cum tăiam din carne!
A se observa cum tăiam din carne!
Prima mea lecție de condus practică :P
Prima mea lecție de condus practică :P
Super casă cu palmieri
Super casă cu palmieri
Linuxiștii la mâncare
Linuxiștii la mâncare
Firefox
Firefox
Rhinooooooooooo
Rhinooooooooooo
Irish Pub
Irish Pub

Ultima zi și drumul înapoi

Trenul de plecat spre casă a fost pe la 7 seara, așa că am avut vreme să mai dăm o raită prin Vienna. După ce am urcat pe cele 300 și ceva de scări de la Stephansdom, Puștiul, Matei și Manu au dat o tură pe la muzeul tehnic, și noi restul ne-am plimbat fiecare prin oraș. Am dat inclusiv de un magazin Saleva unde am aflat că dacă vreau echipament serios de munte trebuie să renunț la minim un rinichi, dar și la un picior și la o mână :-s. Pe acolo pe lângă Hofburg am fost surprinși să vedem steagul României fluturând lângă cel austriac și am aflat ulterior că Băsescu era în vizită de stat la Vienna. Ne-am mai plimbat pe străduțe pe acolo și am fugit pe MariablablaStrasse (strada de cumpărături) până la gară. Ultima fază tare înainte de plecare a fost când Matei a băgat cartela pentru transport în loc de tichetul pentru bagaj în automat și a trebuit să vină băieții de la securitate să descurcăm situațiunea.

Nu îmi amintesc foarte multe despre trenul înapoi, am cam dormit puternic :)

RobotChallenge în Viena

Pentru următoarele câteva zile voi fi la Viena, la RobotChallenge, şi voi încerca să postez cât mai multe experienţe robotiste pe ed304.cs.pub.ro, dar voi scrie şi aici despre ce mai văd prin Viena şi cum :). Momentan, pot să spun că sunt plăcut impresionat de hotel (stăm la Gerbergasse), şi că la Viena este destul de frig pentru hanorac :P

Roboteală

Una din ocupațiile mele de la facultate este să robotesc. Adică să construiesc roboți, în special autonomi (mai multe informații despre grupul nostru de robotiști aici). Ultimele 3 săptămâni m-am luptat cu fel și fel de probleme la unul din roboții pe care îi avem la laborator, și, deși încă nu am reușit să rezolv toate problemele, am învățat o grămadă de lucruri în proces. Eu n-am reușit niciodata în cele 5 – 6 materii cu și despre electronică din facultate să înțeleg cum funcționează trăznăile alea de pe-acolo, dar acum, cu ajutorul domnului profesor Vârbănescu (aka profu’) și cu „ajutorul” problemelor cu robotul cu care lucrez, am înțeles și eu în sfârșit ce-i aia o punte H, cum merge un tranzistor (în mare), cum funcționează MOSFET-urile, să mă joc cu osciloscopul, faptul că trebuie o masă comună între diferite alimentări (care e destul de LMCu, dar dacă-l uiți îi bai)…

Robotul ăsta, care n-are încă un nume (altul decât robotu’ mare) este o mașinuță cu 4 roți și cu control al direcției ca la mașină (cu diferențial și direcție pe față), și are două motoare, unul care angrenează toate 4 roțile și unul care comandă unghiul la care se întorc roțile. Partea de control este făcută cu o placă destul de deșteaptă, pe nume PMS5005 de la Dr. Robot, care printre alte drăcovenii are un adaptor serial to 802.11 (wireless) ceea ce înseamnă că poate comunica pe WiFi cu un calculator. De fapt, placa e gândită să aibă logica separat (pe un computer) și ea se ocupă strict cu controlul și cu primirea feedback-ului de la senzori (nu e programabilă).

Până acum, etapele pe care le-am isprăvit au fost:

  • determinat cum funcționează modulul serial to 802.11
  • configurat 802.11 pentru ad-hoc cu laptop-ul meu
  • determinat că softul de la placă nu funcționează la mine pe comp nici după update de firmware
  • sniffuit pachete, determinat că de fapt placa funcționează corect, softu nu
  • cerut și primit documentație despre protocolul de comunicație al plăcii de la Dr. Robot
  • implementat protocolul în Java într-o formă barbară
  • testat servo motorul pentru direcție
  • ars servo motorul pentru direcție
  • comandat servo nou pentru direcție
  • stabilit că servo s-a ars din lipsa de masă comună
  • instalat servo nou, testat că funcționează
  • reparat servo vechi (aici eu am avut contribuție minimă :)
  • refactorizat și rearanjat implementarea protocolului, mutat partea de conexiune într-un layer inferior, implementat pentru serial și pentru wifi
  • încercat conexiune prin rfcomm0 (bluetooth), stricat placa mea veche pentru bluetooth
  • configurat 802.11 pentru infrastructure (finally!)
  • testat modul control motor mare
  • ars sursă de calculator (prea puțin curent)
  • multe teste și demontări pentru stabilirea curentului necesar motorului mare
  • reușit comandă PWM motor mare
  • determinat că controllerul de motor are un maxim de 5A (peak)
  • determinat că controllerul de motor fierbe și sub 5A
  • renunțat la ideea de a folosi controllerul de motor
  • petrecut o săptămână citind despre punte H, învățat mult despre tranzistori
  • realizat sursă comună de alimentare pentru toate intrările plăcii de control (6V, 5V, 9/12V)
  • implementat soluție poartă H varianta profu (darlington + relee, 8A max), încercarea 1 (merge)
  • decis că încercarea 1 e prea mare ca și suprafață, implementat încercarea 2, cu sursa comună de alimentare ȘI punte H pe aceeași placă
  • determinat că sub sarcină sursa de 6V fierbe
  • ars un tranzistor
  • ars un releu
  • ars alt releu
  • învățat că rating-urile maxime de curent din documentație sunt pentru răcire eficientă (nu ce făceam eu)
  • făcut radiatoare din aluminiu (bonfaier + bormașină, mersi Adi)
  • făcut cabluri de conectare (ATMega către puntea H, PMS5005 către ATMega)
  • testat super placă pe robot, determinat că nu primește suficient curent și merge bleg
  • consulare de ora 12 cu dl. profesor, micit rezistența dintre +Vbatt și baza Darlingtonului la jumate, adăugat radiator barbar pe Darlington (regulă empirică – dacă are carcasă TO220 – de-aia cu șurub – o să-i trebuiască radiator)
  • testat super placă modificată pe robot, determinată ca merge mai bine, dar tot prea bleg

De fapt, robotul ăsta trebuie să poată să recunoască și să ocolească obstacole, să iasă dintr-un labirint, să nu se bage în pereți și, eventual, la un moment dat să devină ceva mai interesant cum ar fi proiectul meu de diplomă. Mai avem până acolo :)

Azi am făcut și câteva poze bestiei:

Poză ca la mașini :)
Poză ca la mașini :)
Drept dintre ochi
Drept dintre ochi
Punte H + surse de alimentare (check out radiatoarele de pe o placă de bază :P)
Punte H + surse de alimentare (check out radiatoarele de pe o placă de bază :P)
Un ATMega32 lipit cu scotch :P
Un ATMega32 lipit cu scotch :P