Interview with ATHOS (ro)
Muncă în echipă, distracție, învățare, scântei, comunitate – toate fac parte din fibra BattleLab Robotica, la care poți contribui și tu cu puțin curaj. Azi povestim cu cei de la ATHOS, o echipă entuziasmată, aflată la prima participare. Ne oferă perspectiva lor Taslauan Alexandra, Muresan Emma Simina și Tripa Alex.
Ce te-a motivat să te înscrii la BattleLab Robotica?
Nu sunt prea multe competiții de genul, majoritatea implică doar programare, iar nouă ne place mult și partea hard.
O combinație între nevoie de proiect pentru facultate, pasiune și dorința de provocare.
Îmi place ideea competiției și faptul că pot să îmi pun cunoștințele în practică. Am auzit multe lucruri bune despre BattleLab și cred că experiența aceasta ne va ajuta pe viitor.
Ce așteptări ai de la tine și echipa ta? Dar de la eveniment?
M-am așteptat să învăț mult, să acumulez cât mai multe cunoștințe din toate domeniile, ceea ce s-a și întâmplat. Din perspectiva echipei, suntem entuziasmați să participăm la competiție și să avem rezultate cât mai bune. Fiind prima ediție la care participăm, nu ne așteptăm neapărat la câștig. Să nu fim scoși din ring în primele două runde și e perfect.
Cum stați cu lucrul la robot? Cât de dificil îl găsiți până acum?
Avem toate componentele. Suntem la început cu partea de asamblare, dar nu pare foarte dificil. Munca de echipă contează mult și suntem pe drumul cel bun.
Cum îți imaginezi că va fi ziua competiției?
Foarte intensă și plină de emoții, cred că vom sta cu sufletul la gură când vom fi pe ring cu robotul nostru.
Interesantă. Multă agitatie. Exciting.
Tensionată.
Aveți vreun mesaj pentru urmăritorii paginii noastre?
Aveți curaj să vă înscrieți! E o experiență interesantă și veți învăța multe lucruri. E challenging dacă vreți să vă implicați cu adevărat, dar merită.
Urmăriți BattleLab, ce e mai fain se apropie repede.
Ne vedem pe 20 mai!
Interview with medaaTech, part 2 (ro)
Mai tragem puțin cu ochiul în culisele echipei medaaTech, prezentă pentru a doua oară la BattleLab Robotica.
Anul trecut au început să lucreze la robot abia în perioada aceasta și a fost o provocare să-l termine la timp, însă o provocare frumoasă, care i-a umplut apoi de mândrie în ziua competiției.
________________________________________________
Ce apreciezi cel mai mult la competiție?
Cred că comunitatea din jurul competiției și faptul că poți să ceri ajutor și fie o echipă de acum mulți ani îți va da patru baterii, fie vei fi ajutat cu păreri de la alte persoane, oamenii te vor ajuta, dacă pot, cu orice ai nevoie.
Cum ți s-a părut ediția de anul trecut?
Interesantă. A fost prima ediție la care am participat și a fost puțin grea din punct de vedere al unui participant nou care trebuia să-și termine robotul până în ziua competiției. Sunt multe lucruri pe care trebuie să le înveți și nu doar mecanică, programare etc, ci și lucrul în echipă, cum să vă înțelegeți mai bine, cum să comunicați în echipă (un lucru de care ne-am lovit, dar ne-a învățat să încercăm să fim mult mai ok pe partea aceasta), cum să vă gestionați timpul.
Ce așteptări ai de la ediția aceasta, atât la nivel de echipă, cât și la nivel de robot?
Eu sper să avem un robot cât mai ok. Anul trecut am avut puțin noroc în legătură cu forma robotului. Din punct de vedere al echipei, nu pot să-mi doresc ceva mai mult. Totul merge foarte bine, mai ales cum relaționăm noi între noi. Sper să avem un robot cât mai performant și să umplem toate golurile pe care le-am avut anul trecut.
Cum a fost interacțiunea cu trainerii și profesorii colaboratori?
Îmi place că profesorii colaboratori sunt foarte deschiși și ne ajută oricând. La training-uri n-am avut ocazia să participăm chiar la toate, dar trainerii au fost foarte de treabă și ne-au răspuns la orice întrebare.
Crezi că cineva nu atât de experimentat în domeniu s-ar descurca?
Asta depinde de fiecare, de hobby-urile pe care le are persoana respectivă și de ceea ce face în timpul liber. Dacă are o pasiune pentru roboți și dacă este ajutat de către persoanele din jurul lui, eu zic că da, s-ar putea descurca.
De unde a apărut pasiunea ta pentru roboți?
În liceu am lucrat într-o vară la o fabrică de plăci de bază timp de o lună și trebuia să le testez. În timp ce se făceau toate testele pe componentele respective, stăteam și mă gândeam Ce cool că cineva chiar a făcut asta. Vreau și eu! Am ajuns la facultate, am dat de Arduino și am tot făcut proiecte.
Interview with medaaTech (ro)
Ziua competiției se apropie cu pași repezi și BattleLab Robotica dă ultima strigare pentru studenți motivați să celebreze știința și să trăiască o experiență inedită alături de noi. Azi ne povestește mai multe din experiența ei și a echipei sale Evelyn Pleșca, membră medaaTech.
A câte ediție e asta pentru tine? Ce te-a făcut să te reînscrii?
Acum participăm pentru a doua oară. Mi-au plăcut mie și colegilor mei de echipă atât concursul în sine, ce presupune, faptul că este un proiect embedded mult mai fain decât ce facem în mod normal la facultate, cât și oamenii care sunt implicați în concurs și toată comunitatea care este creată în jurul acestui tip de competiție.
Spune-ne amintirea ta preferată în legătură cu BattleLab Robotica.
Nu știu dacă pot să zic că mi-a plăcut, dar faptul că am dormit în facultate și am lucrat o noapte întreagă înainte de concurs. A fost foarte interesant. Oricât de greu ar fi fost, toate amintirile legate de concurs și de ediția trecută îmi sunt dragi.
Cum ți s-a părut comunitatea de participanți de anul trecut? Cum ați interacționat unii cu ceilalți?
Am interacționat mai mult în ziua concursului, ne mai ajutam. Chiar dacă în ring concurăm, lumea e prietenoasă. Am avut niște probleme cu magneții și cei de lângă noi ne-au ajutat să rezolvăm cât de cât problema.
Care au fost fricile tale la prima ediție la care ai participat? Au fost justificate?
Mi-a fost frică de faptul că nu vom termina robotul. Ne-am apucat anul trecut doar în această perioadă să-l facem și n-am putut nici să punem lama pe robot. Era trei dimineața înainte de concurs și credeam că nu îl vom termina. Dar l-am terminat.
Și cum v-ați simțit când ați terminat robotul? Dar în ziua competiției?
Obosiți. Și mândri.
La șase dimineața am terminat. Cred că o oră am dormit, dar nici de aceea nu sunt sigură. Robotul a fost ca și copilul nostru, a fost cea mai mare mândrie să-l vedem cum se bate cu alți roboți. Mi-a plăcut chiar și când am fost bătuți, când l-am văzut în aer. Ne-am simțit pur și simplu fericiți că am putut să facem asta, mai ales când l-am văzut pe ring, în aer.
Ai vreun mesaj pentru cei care se gândesc să se înscrie acum pentru prima dată?
Nu aveți ce să pierdeți și gândiți-vă că aveți foarte multe de învățat din concursul acesta, de la lucrul în echipă, la time management, la programare, la absolut tot. Este un proiect mai aparte, nu faci oricând un robot pe care să-l vezi în acțiune, iar acest lucru te motivează.
Interviu cu Andrei Tulbure, membru Team Vision
Te ajută BattleLab Robotica în viața de angajat? Îți îmbunătățește anumite skill-uri? Te face să te diferențiezi de alții?
La toate aceste întrebări (și nu numai) ne va răspunde un om drag nouă, dintr-o echipă care s-a remarcat în ultimii ani în tot ce înseamnă competiții de sumo robotic – Andrei Tulbure, membru al echipei TeamVision.
În general, lumea care a mai interacționat cu BattleLab Robotica te cunoaște. Totuși, pentru cei care încă nu te cunosc, poți să ne spui câteva lucruri despre tine?
Salutare! O caracteristică personală pe care o consider importantă este conștiinciozitatea. Chiar dacă nu am fost mereu cel mai strălucit student, am avut dorința de a încerca, a crește și a face un lucru calitativ. Tot datorită acestei caracteristici am decis să preiau partea de finanțe a echipei. Ne-am consultat în echipă și am decis că era necesar să contactăm posibili sponsori pe diverse platforme. Am spus că fac eu asta, zi de zi, chiar dacă vom mai fi și refuzați. Foarte important, nu am plecat niciodată de la premisa că nu avem cunoștințe, relații, iar din cauza acestui fapt vom eșua. Am dat toți ce am avut mai bun și ne-am făcut treaba în mod profesionist.
Totodată, trebuie să fii atent la oamenii/echipa cu care te asociezi. Dacă dorești să fie ceva funcțional, este nevoie să ai alături oameni cu care să fii pe aceeași lungime de undă. Nu să fiți neapărat asemănători, dar să aveți aceeași percepție asupra lucrurilor importante (cât de mult timp dedicați robotului, cât de tare vă implicați în general, etc).
Cum ai aflat despre BattleLab Robotica și de ce ai ales să participi?
De această competiție știam încă din timpul liceului. Sora mea a participat la BattleLab, iar competiția m-a atras încă de pe atunci foarte mult. Am zis că în momentul în care ajung la facultate, trebuie neapărat să particip! M-au atras atât partea de construire a robotului, cât și atmosfera pe care ți-o dă concursul. La trecerea din anul 1 în anul 2, am vorbit cu 2 colegi care știau deja de competiție, erau receptivi și eram pe aceeași felie (fiind colegi de grupă/semigrupă). Cu timpul, am învățat și așa am ajuns să câștigăm BattleLab Robotica 2 ani la rând. Vreau să accentuez că la o astfel de competiție, echipa este cea mai importantă. Singur, nu o să reușești niciodată. Spre exemplu, degeaba făceam ce trebuie ok la finanțe, dacă robotul nu pornea.
Cum a început povestea TeamVision și cum ați lucrat în echipă?
Pe scurt, a început între anul 1 și 2 de facultate. Important e să își dorească toți membri echipei același lucru, să lucrați și să aveți un plan de lucru (adică ,spre exemplu, să vă apucați din timp să faceți research pentru piese). Un alt aspect important de precizat este că nu a mers tot timpul bine. Au fost și momente dificile. Totuși, trebuie să îți dai seama când este vorba de un lucru de moment și când discutăm de o disfuncționalitate a echipei. Noi ne-am împărțit clar task-urile, fiecare știa tot ce ținea de aria sa, iar doar când era necesar ne dădeam cu părerea pe aria celorlalți.
Având în vedere că ați participat ca echipă câțiva ani la acest tip de competiții, ai/ați observat anumite skill-uri care s-au dezvoltat semnificativ?
Voi începe cu perspectiva colegilor. Cam toți și-au găsit de lucru în domeniu pe baza acestor competiții, a skill-urilor pe care le-au dezvoltat și mai ales a expunerii pe care ți-o dă un concurs ca BattleLab Robotica. Un exemplu clar: persoana care s-a ocupat de partea de mecanică în echipă, și-a găsit un job exact pe acel segment. O astfel de competiție te propulsează și demonstrează în fața oamenilor aptitudinile/capacitățile pe care le ai. Nu îți faci atâtea griji dacă vei fi sau nu concediat. Știi că ai experiență, rezultate și skill, iar acest lucru îți oferă libertatea de a alege și a o lua cu încredere de la capăt. Și chiar dacă ești mai leneș, ai șanse să îți găsești jobul ideal. O astfel de competiție îți poate arăta o latură a ingineriei care te atrage mai mult decât temele și laboratoarele obișnuite și te ajută să formezi relațiile esențiale unei angajări reușite.
În privința mea, voi fi scurt: mi-a dezvoltat extrem de mult abilitățile de comunicare. Știu că la prima vedere sună destul de vag, dar când am intrat la facultate nu aveam capacitatea de a vorbi așa liber, nu știam cum să fac un pitch, orice numai să nu trebuiască să vorbesc. Acum am ajuns să vorbesc cu plăcere și să o fac în mod liber. Pot spune că m-a ajutat să obțin o viață mai bună la acel job. E important să nu îți fie frică să socializezi, să înțelegi ce vor oamenii să audă de la un raport și tot așa.
Din nou, un lucru important pentru toți din echipă: relațiile pe care le-am conturat cu oamenii din industrie. Acei oameni mereu au încercat să ne ajute și ne-au anunțat de toate oportunitățile care apăreau.
Cum a influențat munca din timpul concursului viața după angajare și experiența unui interviu?
Unu la mână, ne-au dezvoltat/întărit mai multe skill-uri, iar asta ne-a oferit mai multă încredere asupra muncii noastre și asupra multitudinii de oportunități pe care le avem. E fain să știi că ești foarte bun la ceva, iar acel ceva este căutat pe piața muncii. Pe a doua parte, a mea, m-a făcut să privesc relațiile interpersonale mult mai profund. Înainte consideram că dacă ești profesionist, este suficient. În final, am ajuns să constat importanța relaționării cu ceilalți (cum te comporți, cum vorbești, cum transmiți informațiile,etc.). Consider că dacă nu mă avântam în provocarea BattleLab, cel mai probabil nu ajungeam la fel de bine cum sunt în acest moment.
Faptul că ai lucrat în echipă atâția ani, te-a făcut să te adaptezi mai ușor la munca din cadrul jobului?
Este destul de dificil să vorbesc din perspectiva colegilor. Totuși, din ce am mai discutat de-a lungul timpului, pot spune că nu au o problemă în a lucra în echipă. Deci putem afirma că experiența asta le-a fost benefică și a facilitat teamwork-ul.
În privința mea, o să zic puțin mai multe. Întâmpini atât de multe probleme în timpul unui proiect, încât sunteți obligați să găsiți rapid, împreună, soluții. Când vreți să îmbunătățiți un robot, sunteți toți implicați în asta. Te învață să lucrezi în echipă, să ai încredere în ce face celălalt și efectiv să nu micromanageriezi. S-a reflectat și la job. Să zicem că avem un task și se împarte în mai multe bucăți. Nu am stat niciodată pe capul unui coleg să văd în fiecare zi ce a făcut la partea lui. Îl întreb la început și la final. Îi spun că are suportul meu dacă o să fie nevoie și am încredere că la final, dacă există nelămuriri, le vom reglementa împreună, ca echipă. În final, nu e life saving, dar te ajută să lucrezi mai bine.
Sunt anumiți oameni care au skill-uri, dar care nu au capacitatea de a „se vinde” și a construi relații. Ai vreun sfat pentru ei?
Foarte bună întrebare. În general, dacă ai un anumit skill, acesta este observat în prealabil de colegii tăi. Astfel, dacă ți se spune că știi să îți alegi cuvintele și să vorbești, probabil ar trebui să investești și să încerci să faci ceva pe partea de vânzări. Dacă îți e rușine să vorbești și ai nevoie de o altă persoană să te introducă ca să poți începe o conversație, atunci cel mai important este să începi să abordezi oamenii. Repet, dacă ți s-a zis că ai skill-ul respectiv. Dacă nu ți-a zis nimeni, n-ai skill-ul și ești timid, atunci va trebui să înveți. Trebuie să iei niște cărți, un curs, youtube. Vrei să devii un vânzător bun? Vezi ce cărți sunt bune în domeniul acela și citește-le. Apoi abordează oameni. Poate nu o să meargă din prima, dar pe parcurs o să fie din ce în ce mai bine. La fel când ești un designer bun. Încerci și vezi feedback-ul pe care îl primești. În 3 luni, 7 luni, 1 an…primești destul feedback. În acel interval, ai timp să îți rafinezi skill-urile și să afli dacă ești sau nu bun la asta. Iar asta se aplică la absolut orice! Just do it! Repet: JUST DO IT! Poate alții ar spune altceva, dar experiența mea de până acum, asta mi-a dovedit. La prima ediție BattleLab Robotica, am avut toate condițiile să facem o treabă extraordinară, dar anumite erori în execuție au făcut ca niciunul dintre cei 2 roboți să nu pornească. În următorul an, am avut iar bani, expertiză și în plus, o execuție curată. Și așa a început succesul echipei noastre. Deci ca un ultim îndemn: nu vă descurajați! Încercați, fiți dedicați, învățați din greșeli și dați ce aveți mai bun, în echipă.
Sumo robot electronics
So you want to build a sumo robot. Great. Go grab some coffee and make yourself comfortable because there are lots of things you should know about the electronics involved. When I started designing mine, I got in touch with a team that had already had a few years of experience. That’s something that you should consider as well. They were really open to sharing their ideas, designs and even mistakes so that we didn’t have to start from scratch. I thought I should take this a step further by documenting here some of the key points of designing a sumo robot. That’s the key to building a decent sumo robot on your first attempt.
Typical block diagram
Here’s what the basic block diagram of a robot looks like. It can vary a lot, but let’s keep things simple. There are many approaches for making each of these components. If you’re a beginner, I would recommend a Lego-like approach : Look online for modules that fit each of the components in the diagram, buy them and put them together. If you have some experience with PCB layout, I would suggest making your own PCB with the microcontroller board and the power supply unit.
Power supply
The battery used for the robot cannot power the other electronics directly, because usually the voltage of the battery is too high. The power supply unit has to provide the right voltages for the microcontroller board, the sensors and any other peripherals that might be on the robot. Here I’d like to start with two approaches that I don’t like.
One of them is linear regulators. This was the way to go in the 1980s, but it’s not wrong because it’s old. It’s a bad idea because it’s very inefficient. The higher the voltage difference between the input and the output and the higher the current, the more energy gets wasted as heat. Moreover, regulators like the LM7805 have an input voltage upper limit that is too low for the typical battery voltage used in these robots (32 V or more).
Another approach that I often see and I don’t like is a separate battery for the microcontroller. This is bad because it takes up a lot of space, adds significant weight and is yet another element to take care of. The robot might behave unexpectedly if this battery fails.
The solution : use a buck converter. Or more. I won’t get into any details of how it works, but let’s just say it’s far more efficient than any other solution when it comes to energy, weight and volume. It also has a wider input voltage range.
If you want to design custom electronics for the robot, you could make your own, but there are a lot of modules available online.
The microcontroller board
This could be an endless paragraph. However, I will try to give you some basic guidelines.
You should choose your board based on your level of expertise. The most obvious choice is the Arduino. It is by far the easiest to use, it has a huge community and lots of hardware and software resources that make life easier. This simplicity comes with a cost, which in this case is lack of performance. On the long run, I think Arduino encourages bad software and hardware practices, so you should consider something else if you’re more advanced.
The first alternative that I like is the mbed. The mbed compatible boards are based on ARM Cortex microcontrollers. They are a lot more powerful than AVR based Arduinos. They also offer a platform that simplifies software development by abstracting low level code, offering a HAL, RTOS and lots of libraries. The code is mostly portable and there are plenty of hardware options from low power Cortex M0+ boards to Cortex M4 ones.
If you’re brave enough (or skilled, actually), you can make your own board. This solution is the most effective as weight and volume. It solves the issue of having a mess of wires that come out of your robot as soon as you remove the top cover. It should include a microcontroller and all the custom hardware needs that you have, so other modules like the sensors or the motor driver should just plug into your main board. You could even make a hybrid that includes an Arduino or something similar and your custom hardware. However, if you’ve never done this before, I wouldn’t suggest choosing this as your first PCB layout.
Sensors
A robot needs sensors for two main reasons : It has to detect the other robot and it has to detect the white border of the ring, so that it turns in order to stay in the ring.
Enemy sensors are typically industrial reflective sensors. They emit light and detect the light that bounces off reflective objects. They usually have open collector outputs, meaning that they have an internal output transistor that has it’s collector exposed as an output.
This type of output requires external hardware in order to be read correctly by a microcontroller. The external hardware depends on the type of output (NPN or PNP). If it’s an NPN output, you need a pullup resistor, which pulls the output up when the transistor is not conducting. This results in two voltage levels : one close to ground and one close to the voltage that the resistor is connected to. The advantage of NPN outputs is that you get to choose the logic level, so the pullup resistor should be connected to the IO voltage of the microcontroller (5 V for most Arduinos or 3,3 V for ARM microcontrollers). If you’re using a PNP output sensor, you need a pulldown resistor. The big disadvantage of PNP outputs is that you can’t choose the logic level, and the output will swing up to the sensor’s supply voltage, which is too high for any microcontroller (usually 12–30 V). However, if you still want to use sensors with PNP outputs, you can use a voltage divider (but I wouldn’t recommend it) or some sort of logic level shifter to make sure you are not exceeding the IO voltage of the microcontroller.
One such sensor is the Omron E3Z-D82.
Border sensors are reflective sensors too. The main difference is that they have a lot less range compared with enemy sensors, so they can be a lot smaller. You can use a sensor that has the LED and the phototransistor in one capsule, like the TCRT1000. It needs external hardware to work (two resistors, nothing fancy), but it is easy to use. Another option is to use a module that includes a similar sensor, so you don’t have to deal with external hardware. Here’s one example : the QTR-1RC.
The motor driver
Building your own requires some serious power electronics knowledge. If you’ve never built a motor driver before, don’t build the first one for your sumo robot. It will be a frustrating experience.
There are lots of options online. You have to choose the motors first, decide what voltage you want to run them at, estimate the maximum current based on the motor’s datasheet and then choose a driver that fits. One popular option is the Sabertooth. You could also use Roboclaw.
Interfacing
Let’s assume you want to integrate a new component in an existing robot. When putting hardware components or modules together, there are several aspects to consider :
- Power
Is the voltage required for the new component present in the system ? If it is, check the maximum current of the new component and make sure you are not exceeding the current rating of the power supply. If not, you need to add a power supply that outputs the required voltage. (Go back to the power supply paragraph.)
- Logic levels
When connecting two modules or components, make sure that their logic levels match. Also, the maximum input voltage on any pin (of a microcontroller or any peripheral) should not exceed the VCC voltage of that module.
Example : If a module requires 3.3 V to run, an input signal that goes up to 5 V can damage the module or the source of the signal.
The solution : Try to use a single logic level for the whole system. If that’s not possible, use a logic level shifter for digital pins.
More details here.
- Pin assignment
When connecting something to the microcontroller, you have to choose the pins based on the interface. Some pins have special purposes, some are dedicated to a specific interface like UART, SPI, I2C, some are connected to the ADC etc. When connecting a simple switch or sensor, try to use a general purpose pin (that has none of these functionalities). When connecting a device that communicates on a specific interface like SPI or UART, usually you cannot use any pin, so use the pins that support the required interface. You have to be aware of the pinout constraints of the microcontroller or develpment board before designing the robot, so read the datasheet first.
Here’s an example :
This is the pinout of the mbed LPC1768 board. Let’s say you want to connect a sensor on the SPI bus. You have to use one of these groups of pins : (p5, p6, p7) or (p11, p12, p13), as shown in the above diagram.
Practical aspects
First of all, you must have a high level view of what the robot will do and how complex you want it to be. Then, you have to choose the components you want to include and also make sure they are compatible, based on the topics mentioned above.
Draw a block diagram of how the modules or components interconnect and make sure to include the pins of the microcontroller that they occupy. Make sure to include the power supplies as well.
Use a step by step approach to test the hardware before putting it all together. For testing purposes, everything can be built on a breadboard. On the actual robot you have to use something more ‘permanent’ than a breadboard. You could use a perfboard and solder all the components on it and keep in mind that the robot will take some serious impacts, so everything has to be well secured inside. The best option would be making your own PCB that holds all the components.
I can’t stress enough how the step by step approach can prevent the magic smoke from being released. Take great care with any power line. Make sure there are no shorts on any of the power lines and that the right voltages go to the right pins. This can be done before applying power using a multimeter and checking for continuity. Use connectors that lock in. General purpose pin headers will disconnect themselves due to vibration and impacts.
Prototyping
Here’s what me and my team have been using before the PCBs were ready. This crude setup allowed us to write software while waiting for the PCBs. We also spotted some hardware mistakes which were corrected before making the final version of the electronics. We started by making a few prototypes on perf boards. One of them is the board that includes the DIP version of the Atmega644, the main microcontroller used on our robot. Another board includes the Atmega328, which we intended to use in our motor driver. On the right, there is the USBASP programmer, used to load the code onto the microcontrollers, and the FTDI, which enables microcontrollers to communicate with the PC via USB. It even has motors and wheels, but they can’t be seen in this photo because they are under the wooden board.
Debugging
Is it a hardware or a software problem ?
While building your robot, chances are you will experience the most commonly heard question in embedded systems development : “ Is it a hardware or a software problem ?”. I’m sure there are better troubleshooting guides available online, but I will try to summarize my way of debugging.
Recent changes
Think about the recent changes that you’ve made, because they might be the cause of the failure.
Power supplies
One of the first steps in hardware debugging is making sure that the right voltages are present in the circuit. Check all the voltages present at the outputs of the power supplies and make sure all the modules are properly powered. One missing or abnormal voltage should help you narrow down the possibilities.
Here’s an example :
If one voltage is missing, disconnect the load from the power supply and see if the power supply works on its own. If it does, than something is overloading it so you have to look for short circuits. If it doesn’t work, than the power supply needs to be changed.
Use testing equipment
If the circuit is behaving unexpectedly, you certainly need a different perspective to find the problem. Here’s where testing equipment comes in handy.
Example : Let’s say you are trying to read some sensors and the values that the microcontroller reads are abnormal. Use a multimeter to measure the voltage on the pin and check if there is a mismatch. This way you can separate a hardware issue from a software one.
Example project
This is the first hardware version that me and my team have designed. Except for the motor driver, it works and it was used in a few competitions. It is based on the modules from the prototyping section above, but it has some extra features : I/O ports for sensors and external boards, comparators for the white line sensors, short circuit protection on the sensor ports, etc.
Finally, here’s the whole thing in action. Our robot, Anvil (on the left in the video) took part in the BattleLab Robotica contest in 2016 powered by this version of the electronics.
Although this article might be a little too subjective, I really hope it is a good starting point for anyone who’s interested in robotics and sumo robots in particular. Feel free to respond with your opinions and suggestions for improving this article.
Article written by Stelian Saracut, BLR 2016 and 2017 contestant and winner of the local phase of BattleLab Robotica 2017 with Anvil.
a
All Japan Robot-Sumo Tournament
Prima dată când am văzut roboți de sumo a fost la BattleLab Robotica 2015, unde am mers ca spectator la invitația unui coleg. Atunci am promis că la anul voi merge ca participant și m-am ținut de cuvânt. Am construit robotul Anvil împreună cu 3 foști colegi de liceu și în 2016 am participat la BattleLab Robotica. Am primit ajutorul unei echipe mai avansate, Precision Robotics, și tot de la ei am auzit de concursul din Japonia. De atunci, concursul All Japan Robot-Sumo Tournament a devenit miza la care mă gândeam ori de câte ori lucram la robot.
După BattleLab Robotica am început să colaborez și cu echipa Matrix, iar împreună cu ei am primit invitație la concursul din Japonia. M-am bucurat enorm, nu doar pentru faptul că am primit ocazia să concurez cu cele mai bune echipe de sumo robotic din lume, dar și pentru simplul fapt de a vizita Japonia.
În Tokyo am avut la dispoziție două zile doar să vizităm orașul. Am văzut câteva atracții turistice, dar cred că am fost mai impresionat de diferențele majore de cultură și de felul total diferit în care decurg activitățile zilnice din perspectiva unor turiști europeni. Servirea la restaurante și cafenele diferă enorm față de standardele europene. Am fost întâmpinați foarte politicos, iar pe lângă asta sunt o mulțime de reguli nescrise pe care oamenii par să le respecte. Un exemplu ar fi faptul că e nepoliticos să-ți condimentezi mâncarea după gustul tău, iar felul nostru de a vorbi în public este considerat prea gălăgios și nepoliticos.
Concursul era în 2016 la a 28-a ediție și s-a desfășurat în arena unde se organizează lupte de sumo, Ryogoku Sumo Hall. Aici, din discursul CEO-ului de la Fujisoft (compania care organizează concursul), mi-am dat seama că Sumo robotic este oarecum parte din cultura japoneză, mai exact din ceea ce ei numesc “monozukuri”, sau spiritul de a construi lucruri. Meciurile au preluat o parte din ceremonia luptelor de sumo adevărate. Înainte de meci, concurenții se salută dând din cap, iar arbitrii dau startul cu expresia folosită și la sumo uman, “hakkeyoi nokotta”.
În ceea ce privește rezultatele, am fost destul de dezamăgiți deoarece echipele din România au fost jos în clasament comparativ cu alți ani. Oricum, după concurs am participat la meciuri amicale și ne-am consultat cu concurenți din toată lumea, iar acum știm ce am putea să îmbunătățim, avându-i ca surse de inspirație pe cei mai buni.
a
Interviu cu Anvil
Cum a luat naștere echipa voastră?
Fiind cu toții de la același liceu, am format destul de ușor o echipă în momentul în care Mihai a venit cu inițiativa de a participa la BattleLab Robotica. Plini de ambiție, am pornit de la început cu gândul la un robot puternic.
O întâmplare amuzantă de pe parcursul construcției robotului?
Au fost mai multe părți amuzante în construcția robotului, însă una merită mai multă atenție. Cu 3 ore înainte de plecarea trenului spre București, am mai dat un meci final, de test, împotriva unei cutii de carton. Spre surprinderea noastră, un motor s-a ars, motor fără care nu puteam participa. Reparat cu greu și pe grabă, am ajuns până la urmă în București. Culmea este că, la sfârșitul competiției, am zis să vedem cum reacționează dacă are un robot în anumite unghiuri moarte. Am testat iarași, cu o cutie, dar am pierdut meciul, arzând celălalt motor de această dată…
Care a fost cea mai mare provocare în construirea robotului?
Cea mai mare provocare a fost să obținem sponsorizările și piesele la timp. De asemenea, testarea robotului a fost dificilă pentru că nu oriunde se găsește un disc de oțel de dimensiunea potrivită, iar când găsești, trebuie să asiguri mult spațiu liber în jurul lui.
Ați mai participat și la alte competiții de sumo robotic?
După BattleLab Robotica 2016, următoarea provocare pentru Anvil a fost RoboChallenge2016. Fiind primul concurs internațional la care participam nu eram siguri la ce să ne așteptăm, știind că vom înfrunta cei mai buni roboți ai Europei (și nu numai). Cu rucsacii plini de piese, unelte, laptopuri, baterii și nu în ultimul rând robotul, am pornit spre București la miezul nopții, întâlnindu-ne în tren cu alte 2 echipe clujene. Noaptea s-a scurs pe holul vagonului discutând idei, planuri de viitor și strategii pentru concursul ce urma.
Cum s-a desfășurat această competiție?
Odată ajunși și cazați, ne-am reluat pregătirile și retușurile. Pentru asta am mers în holul facultății unde urma să se desfășoare concursul. Zeci de oameni își testau și ajustau roboții. Sunetele motoarelor, murmurul vocilor și strigătele creau o atmosferă plină de entuziasm. Atunci vedeam pentru prima oară cu cine vom avea de a face în zilele ce urmează. Fiecare echipă “spiona” restul roboților, aproximând viteza, forța și agilitatea adversarilor.
Majoritatea meciurilor se desfășurau greoi și tăcut, fără prea multă agitație din partea spectatorilor. Însă, mai erau multe de văzut, cum ar fi competiția de line follower, micro Sumo, mini Sumo, maze, drone racing și freestyle.
Deveneam din ce în ce mai entuziasmat, înspăimântat și agitat pe măsură ce meciurile lui Anvil se apropiau, iar gânduri precum “oare nu trebuia să mai schimb un if?”, “oare nu trebuiau prinse lamele un mm mai în față?” sau “oare am montat bine toate mufele?” mă măcinau. Am avut ghinionul (și onoarea) de a înfrunta campioni și vice-campioni modiali încă din grupe, reușind să câștigăm puține meciuri. Însă acest lucru nu ne-a oferit decât mai mult timp pentru a studia alți roboți și a ne da seama cum trebuie să-l îmbunătățim pe Anvil.
Cea mai reușită parte a concursului a avut loc după terminarea acestuia, când împreună cu alte câteva echipe (Flex, Bro, Deflect, Masakrator) am continuat meciurile în subsolurile politehnicii ore bune. Eram cu toții mai relaxati, se râdea și se desfășurau meciuri atipice (poziționarea inițială diferită de cea inițială, mai mulți roboți într-un singur meci etc.).
Pe langă toți roboții executați profesionist, ce m-a impresionat cel mai tare a fost vârsta și entuziasmul unor participanți la categoria mini Sumo. Am vorbit cu copiii de 10-12 ani despre roboții lor și am ramas impresionați de dedicarea cu care lucrează și entuziasmul pentru robotică.
Ce sfat ați da echipelor care participă pentru prima dată la BattleLab Robotica 2017?
Niciodată să nu gândești “mai este timp”.
a
Edina Valkai şi primul BattleLab Robotica
Știm că ești primul coordonator al proiectului BattleLab Robotica. De unde a pornit ideea, care au fost provocările primei ediții?
Profesorul care a pus bazele competiției, Septimiu Crișan, îmi era pe atunci profesor la facultate și povestind cu el am aflat că dorea să îl ajutăm cu partea organizatorică a evenimentului. Deja de la prima discuție mi-a surâs idea, iar când colegii din BEST mi-au oferit suportul pentru a candida la funcția asta, nu am mai stat pe gânduri. A fost una dintre cele mai inspirate decizii de pe parcursul facultății. ☺
Un interviu cu Chrome Valkyrie
Cum a luat naștere echipa voastră?
Ne-am adunat foști concurenți din anul 1, împreună cu încă doi prieteni interesați de robotică și am zis că ar fi fain să încercăm să construim împreună un robot.