Peeter 2013: Difference between revisions

From ICO wiki
Jump to navigationJump to search
No edit summary
 
(52 intermediate revisions by 5 users not shown)
Line 10: Line 10:
|- style="vertical-align: top;"
|- style="vertical-align: top;"
| '''Meeskond "Peeter":'''
| '''Meeskond "Peeter":'''
|[[User:Llusi|Lennart Lüsi]]<br /> [[User:rprosso|Raul Prosso]]<br /> [[User:mmark|Madis Mark]]<br />
|[[User:Llusi|Lennart Lüsi]]<br /> [[User:rprosso|Raul Prosso]]<br /> [[User:jtomingas|Janno Tomingas]]<br />[[User:anvainol|Anna Carina Vainola]]<br />[[User:utiitson|Ülle Tiitson]]<br />
|- style="vertical-align: top;"
|- style="vertical-align: top;"
| '''Juhendaja:'''
| '''Juhendaja:'''
Line 16: Line 16:
|
|
|-
|-
|-//2012 koosseis
=Tiim Peeter eelnevatel aastatel=
|colspan="2" style="background: black; text-align:center; color:white;" | '''Robot ''"M.A.I.U" 2012'''''
*2012 VII - VIII Koht
|-
*2011 II Koht
| '''Ülikool:'''
*Vanaleht asub siin: https://wiki.itcollege.ee/index.php/Peeter
| Eesti Infotehnoloogia Kolledž
 
|- style="vertical-align: top;"
=Robotex 2013=
| '''Tüüp:'''
*5-8. Koht
| Robootika - Jalgpallirobot
*Tore, et mäger kõik segi peksab!
|- style="vertical-align: top;"
*Järgmine aastane kõik täis metallist!
| '''Meeskond "Peeter":'''
==ToDo==
|[[User:Llusi|Lennart Lüsi]]<br /> [[User:adrovnja|Anastassia Drovnjasina]] <br />[[User:rprosso|Raul Prosso]]<br /> [[User:mmark|Madis Mark]]<br /> [[User:Rlohmus|Reelika Lõhmus]]<br />[[User:Kpajula|Kermo Pajula]]<br />
 
|- style="vertical-align: top;"
===Bürokraatia===
| '''Juhendaja:'''
*Laupäev 13.aprill Robosse koosolekule, projekti arutama (Kellaaeg Pole Veel Kindel! VAATA! Robolisti)
|[[User:Mernits|Margus Ernits]]
*Kaasa lüüa TIIGRIHÜPPE Projektis, et saada klubile RAHA
|-
**Mõelda kiiremas korras, mida meie arvame, et oleks klubis vaja
| '''Tulemus robotexil:'''
***Tööriistu
| 7. - 8. koht
***Materjale
|-
***Tehnikat
|
***Robotile lisa asju jne...
|-//2011 koosseis
*Leida sponsoreid, et saada veidi lisa raha juurde
|-
*Otsida paik, firma, kes laseks korralikus pingis roboti detailid välja
|colspan="2" style="background: black; text-align:center; color:white;" | '''Robot ''"Peeter" 2011'''''
|-
| '''Ülikool:'''
| Eesti Infotehnoloogia Kolledž
|- style="vertical-align: top;"
| '''Tüüp:'''
| Robootika - Jalgpallirobot
|- style="vertical-align: top;"
| '''Meeskond "Peeter":'''
|[[User:Llusi|Lennart Lüsi]]<br />  [[User:Kkoik|Kairo Koik]]<br />  [[User:Mkikas|Marek Kikas]]<br /> [[User:Onaaris|Oliver Naaris]]<br /> [[User:Kpajula|Kermo Pajula]] <br />
|- style="vertical-align: top;"
| '''Juhendaja:'''
|[[User:Mernits|Margus Ernits]]
|-
| '''Tulemus robotexil:'''
| 2. koht
|-


===Tehniline===
*Modelleerida roboti põhjaplaat, et pärast CNC pingis välja lõigata
**Arvestada tuleks:
***Kondekatega -- Suurust ja mahtuvust peab veel mõtlema
***Mootorid -- Ei ole täpselt kindel, millised mootorid tulevad, tuleb oodata kontrollerite katsetust
***Kontrollerid mootoritele -- Samuti ootame, kas uued kontrollerid töötavad
***Löögimehanism ja rullik -- Seda saab mõelda kuna kaamera ja objektiivi suurused teada
*Modelleerida roboti teise korruse plaat
**Enne esimese korruse valmimist ei saa suurt midagi püsivat mõelda.
**Arvestada tuleks:
***Emaplaadiga
***Mikrokontrolleriga
***Akudega - Neis peaks tulema taas kaks või kolm / Vanalt robotilt


===Progemine===
*Lähedalt pallipeale sõit, hetkel keerab liiga vähe (minu valemiga keeras liiga palju)
*Kontrolleritele vb peab panema veel pidurutust suuremaks
*Värava peale keeramist testida testida ja veelkord testida
*Start button realiseerida
*Botmaster igast asendist tööle kui asi crashib
*VB peab kontrolleritest veel kiirendust väiksemaks võtma
*Kiirused ühte kohta


=Robot Peeter=
*Timerid kui kaua mäng on kestnud?
Peeter on jalgpallirobot mis tuli Robotex2011 võistlusel teisele kohale. Robot liikleb kolmel „omniwheel“ rattal mis on otseselt ühendatud mootoritele. Mootoreid juhib läbi h-bridge võimenduselemendi ServoBasic mikrokontroller. Ümbritseva keskonna tajumiseks kasutatakse  PS3 Eye kaamerat ning kuute andurit millest 5 mõõdavad kaugust takistustest ning kuues kontrollib palli paiknemist löögimehhanismis. Andurid paiknevad ülevaate saamiseks vasakul ees, paremal ees, vasakul küljel, paremal küljel ja kõrgel keskel ees. Andurite info võtab vastu samuti mikrokontroller. Mikrokontroller vahetab infot arvutisüsteemiga kus vastavalt programmile ja anduritelt saadud infole tagastatakse käsklused tagasi mikrokontrollerile ning omakorda edasi täituritele. Robot kasutab pilditöötluseks EIK roboklubis loodud RoboVision programmi ning hierarhilist juhtimisalgoritmi. Objektide leidmiseks ja tuvastamiseks kasutatakse värve. Väravate tähistuseks on kollane ja sinine värvus ning palli värviks on oranz. Taustvärvideks väljakul on roheline ja valge. Kasutajaliideseks on klaviatuur, hiir, monitor ning erinevad lülitid vooluringides. Tarkvaraliseks kasutajaliideseks on Linux Ubuntu milles töötab roboti programm koostöös RoboVisioniga.[[File:RAS1.jpg|600px]]
*Botmaster aknale panna märk, mis värav on valitud
*Pimesi pealesõidu delayd tuunida
*Kui pall on käes kuidagi viitab selle palli löömisega ja enda keeramisega värava peale
*Ehk samme värava peale keeramist kiiremaks


==Olekumasin==
*Eriku kood mergeda aga enne salvetstada enda värvi parameetrid, better be safe than sorry!
*Testida, testida ja veelkord testida. ANALÜÜS igale olevale testimisele!!!


*'''Olekumasina olekud:'''
*Võistlusel stardi positsiooni peale mõelda
<br />
*'''Otsi palli:''' liigutakse väljakul ringi ning kasutatakse kaamerat ning pilditöötlust palli leidmiseks
*        Palli leidmise korral liigutakse edasi „pööra pallile“ olekusse.
<br />
*'''Pööra pallile:''' sõidetakse edasi pöörates leitud palli suunas.
* Palli kaotamise korral liigutakse tagasi „otsi palli“ olekusse.
* Kui pall on otse ees liigutakse edasi „sõida pallini“ olekusse.
<br />
*'''Sõida pallini:''' sõidetakse otse edasi palli suunas.
* Palli kaotamise korral liigutakse tagasi „otsi palli“ olekusse.
* Kui pall ei ole enam otse ees liigutakse tagasi „pööra pallile“ olekusse
* Kui pall on käes liigutakse edasi „otsi väravat“ olekusse.
<br />
*'''Otsi väravat:''' otsitakse õige värviga väravat.
* Palli kaotamise korral liigutakse tagasi „otsi palli“ olekusse.
* Kui värav leitakse liigutakse edasi „pööra väravale“ olekusse.
<br />
*'''Pööra väravale:''' liigutakse sobivasse asendisse löögiks väravale ning pööratakse nähtava värava ulatuse keskpunktile.
* Palli kaotamise korral liigutakse tagasi „otsi palli“ olekusse.
* Värava kaotamise korral liigutakse tagasi „otsi väravat“ olekusse.
* Saavutades löögiks sobiva positsiooni lüüakse palli.


=Robotex 2013=
==Viide 2013 Aasta ROBOTILE==


=Robotex 2012=
*Soleka delay suuremaks
==Robot enne lammutust==
*Väravale löömist vaadata
'''Videod:'''
*Kirjutada algoritm ees olevast pallist mööda löömiseks ja TESTIDA
*http://www.youtube.com/watch?v=UheMcHwkHOo
*Timeout'id state'de vahele
*http://www.youtube.com/watch?v=i_kFrF39FSM


==ToDo 2012==
==Juppide List==
'''Ehituslik:'''
===Olemas olevad jupid:===
*Rulliku mehanism lõpetada - vedrud jäänud paigaldada - '''done'''
*PS3 Eye
*Külje plekid lõigata ja kinnitada - '''done'''
*Arduino mega & shield
*Kaamera kõrgus ära määrata ja paigaldada - '''done'''
*SSD 64GB
*Kaamera raamile kaks kornsteini mõõta ja paigaldada - '''done'''
*Omniwheels
*SSD ketale kinnitus korruse platele
*Mootorid
*Palli anduri kinnitused - '''done'''
*Kontrollerid mootoritele
*Lülitid paigutada - '''done'''
*Rulliku mootor
'''Elektroonika:'''
*Lülitid
*H-Bridge ära kontrollida vooluga - '''done'''
*Varjestatud kaablit
*H-Bridge signaali juhtmed mikrokontrollerile parajaks teha ja pistikud paigaldada. - '''done'''
*Pistikud
*Mootoritele kaitsmeplokk paigaldada. - '''done'''
*USB3 Kaamera
*Soleka, Rulliku, Kondeka vooluring lõpetada (kliker) üle kontrollida - '''done'''
*Fix obje kaamerale
*Majakad
*Emaplaat, prosega
*Andurid
*RAM(loogiliselt) Võiks ka olemas olla
*Palli andurid paigaldada - '''done'''
*LEDid
*Lülitid - '''done'''
'''Uurida ja mõelda:'''
*Mõelda robotile/meeskonnale uus nimi - '''done'''
*RGB andurid katsetada, kas on abi musta joone tuvastusel
'''Tarkvara:'''
*Cutecom läpparile - '''done'''
*OpenCV installida läpparile - '''done'''
*PS3 Eye driver installida läpparile - '''done'''
*Test program kirjutada - '''done'''
*Panna sõitma erinevaid kujundeid - '''done'''
*Värava tuvastus - '''done'''
*Palli peale sõitmine - '''done'''
*Värava leidmine - '''done'''
*Olekud valmis mõelda paberile joonistada


==Poest vajaminev==
===Tellitud jupid===
*Superattack vms liim.
*15-20A pulk kaitsmed, mootori kaitmseplokile. CA 6tk
*RGB andurid ei tea, peab mõtlema selle üle veel


==Progress==
===Mida vaja tellida===
===Visuaalne progress===
'''Seisuga 15.10.2012'''
<gallery>
File:P15.10.12_1.JPG
File:P15.10.12_2.JPG
</gallery>


'''Seisuga 25.10.2012'''
==Idee nurk==
<gallery>
===Tehniline===
File:P25.10.2012_1.JPG
*Kasutada kaht või kolme kaamerat
File:P25.10.2012_2.JPG
*Musta joone tuvastamiseks ainult põhjaandur
File:P25.10.2012_3.JPG
*Kui leiame ressurssi proovida 1,5 - 3mm objektiivi kaameral
</gallery>


'''Seisuga 30.10.2012'''
===Progemine===
<gallery>
File:P30.10.12_1.JPG
File:P30.10.12_2.JPG
File:P30.10.12_3.JPG
File:P30.10.12_4.JPG
File:P30.10.12_5.JPG
</gallery>
<br>
----


===Mis tehtud===
===Muud IDEED===
'''Seisuga 15.10.2012'''
<br>
*H-Bridge põhjad ja kinnitused pleksist.
*H-Bridge kinnitatud kerele
<br>
'''Seisuga 25.10.2012'''
<br>
*Korruse plaadid valmis
*Mikrokontroller ja muu pisem elektroonika plattedele kinnitatud
*Kaamera kinnitus raam valmis
*Uued rattad all
<br>
'''Seisuga 29 - 30.10.2012'''
<br>
*Külje kaitseseinad
*Emaplaat korruse platele
*Uus rulliku mehanism, töötav mootor nüüd. Kuna mootori pinge taluvust ei tea, väga pikalt ei tasu käiata. Mootor sai statsionaarselt kere põhjakülge. Paigaldatud sai ka rulliku vedru, mis tõmbab selle allapoole tagasi.
*Solekale sai stabika ja sissetõmbe vedrud paigaltatud.
*H-Bridge signaali juhtmed leitud ja külge topitud
<br>
'''Seisuga 31.10.2012'''
<br>
*Rullikule tehtud koonuse kujuline süvis. Pro lahendus :)
*Palliandurid paigaldatud
*H-Bridge testidud koos mikrokontrolleriga
*H-Bridgele tehtud parajad signaali juhtmed ja paigaldatud
*Klikker töötab ilusti
'''Seisuga 01.11.2012'''
<br>
*Viimane korruse plate
*Viimasele korruse platele on pandud lülitid rataste mootoritele ja rullikule (joodetud)
*Solekale ja klikerile uued juhtmed tehtud
*Signaali juhtmed kompaktseks tehtud
*Rataste mootoritele kaitsmeplokk paigaldatud


==Märkused==
=Kuidas teha tight serveri boot  scripti LINUXIS=
===Mootor===
*Make x11vnc autostart upon 'startx'
*Parem esimene mootori H-Bridge võib visata vähe kelbast annab A väärtuse ka B signaalile (Lühist annab signaali juhtme vahelt)
====H-Bridge juhtmed====
*'''Signaalijuhtme järjestused:'''
**'''Parem esimene mootor:'''
***Punane | +5v |
***Roheline | Signaal A | 
***Valge | Signaal B |
***Must | WMA |


**'''Vasak teine mootor:'''
*Add a 'x11vnc.desktop' file to your ~/.config/autostart directory (create one if not available) with 3 lines saying  :
***Punane | +5v |
[Desktop Entry]
***Roheline | Signaal A | 
*Type=Application
***Valge | Signaal B |
*Exec=x11vnc
***Must | WMA |


**'''Tagumine kolmas mootor:'''
=Sekundi bug=
***Punane | +5v |
Arduinos tuleb anda sekund ooteaega, et see üles bootiks.
***Kollane | Signaal A | 
***Valge | Signaal B |
***Must | WMA |


===Solekas===
=XIMEA UPDATE FOR OPENCV=
*Ei tea siiani kumb on soleka + -, tuleks kindlaks teha - '''kindlaks tehtud'''
*Milleks see lisa kolmas juhe - kolmas juhe oli toodud välja varjestus do not why do not care


=Robotex 2011=
Download OpenCV-2.4.3.tar.bz2 from http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/
===ToDo 2011===
*Teha tasklist - done
*Solekas lahti võtta  ja üle vaadata, sest solekas jääb aegajalt kinni.


==Random notes==
<source lang="bash">
*[FIX] Kaitsmed olemas! Teisel H-Bridgel mosfet vahetatud. (vasakult 2ne Testitud ja töökorras) [FR9024N -->> FR5305]
http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.3/OpenCV-2.4.3.tar.bz2
getAnalogs() on tähtis asi
</source>
omni(kraad, kiirus, max kiirus, pöörlemiskiirus, patarei)
conf.setSendCmdEnabled() - suhtlemine prosega (0 või 1) ALATI JUURDE IGALE POOLE, MUIDU KELLAD


omni kraadid:
0 - sõidab otse
180 - sõidab tagasi
90 - pöörleb ümber enda vasakule
270 pöörleb paremale




=Riistvara=
Unpack
===PS3EYE Kaamera===
<source lang="bash">
Tarkvara seadistamiseks, sealjuures flipimiseks on v4l2ucp
tar -xf OpenCV-2.4.3.tar.bz2


===H-bridge===
cd OpenCV-2.4.3
H-bridge võimenduselement mootorite juhtimiseks mikrokontrolleriga.
</source>
[[File:Hbridge_Peeter.jpg|300px|thumb]]
[[File:hbridge.png|300px|thumb]]
[[File:hbridge2.png|150px|thumb]]


<pre>
==Installin XIMEA Update for OpenCV==
A | B | PWM |
0 | 0 |  0  | V      V - Vabakäik
0 | 0 |  1  | P      P - Pidurdus
0 | 1 |  0  | V      <- - Mootor käib ühte pidi
0 | 1 |  1  | <-    -> - Mootor käib teist pidi
1 | 0 |  0  | V
1 | 0 |  1  | ->      162=M1
1 | 1 |  0  | V      163=M2
1 | 1 |  1  | P      164=M3


</pre>
Download opencv_ximea_update_2_4_3_A.zip and replace OpenCV-2.4.3 files by files in attachment to untarred directory of opencv:


Print versioon, et 5 Hbridge põhja printida [[File:5hbridge.pdf|150px|thumb]]
<source lang="bash">
wget http://www.ximea.com/support/attachments/download/804 -O opencv_ximea_update_2_4_3_A.zip
unzip opencv_ximea_update_2_4_3_A.zip
cd ximea_update
cp cap_ximea.cpp ../OpenCV-2.4.3/modules/highgui/src/cap_ximea.cpp
cp CMakeLists.txt ../OpenCV-2.4.3/modules/highgui/CMakeLists.txt
cp OpenCVFindXimea.cmake ../OpenCV-2.4.3/cmake/OpenCVFindXimea.cmake
</source>


----


===Servobasic===
(opencv_untarred)/highgui/src/cap_ximea.cpp
*1-10 loe servo väärtus.
*20-27 loe adc väärtus.
*129-138 kirjuta servo väärtus.
*228 salvesta servode väärtused.
*40 loe kõigi ADC sisendite väärtus, tagastab stringi (NÄIDE : 544,133,124,1,109,173,215,243 )
*230 reset
*231 kõik servod välja/sisse. Parameetrid: 1-sisse 2-välja
*44 kõik analogid ja digitalid (NÄIDE: 88,2,40,36,1023,1011,1023,1022,0,0,0,0,0,0,0,1 )
*Servo nummerdamine 0 - 9
*ADC nummerdamine 0-5
*Löömine 233,  255 on kõik digitalid ühed ja 0 lülitab välja.


[[File:Prose_plaat_infoga.jpg|600px]]
(opencv_untarred)/highgui/CMakeLists.txt


=== Andurite, soleka ja majakate Analoog/Digitaal ===
(opencv_untarred)/cmake/OpenCVFindXimea.cmake
[[File:Prose_doc1_Peeter.jpg|200px|thumb|left]]
*Analog 0 - Palli andur
*Analog 1 - Ees vasak andur
*Analog 2 - Ees parem andur
*Analog 3 - Vasak külje andur
*Analog 4 - Parem külje andur
*Analog 5 - Kaugusandur


*Digital 0 - solekas
Install needed libraries
*Digital 6 - Vasak majaka andur
<source lang="bash">
*Digital 7 - Parem majaka andur
sudo apt-get install libgtk2.0-dev
sudo apt-get install pkg-config


cd ../OpenCV-2.4.3
#Build
mkdir build
cd build
# on some systems "-D WITH_TIFF=NO" should be added to options
cmake -D WITH_XIMEA=YES ..
make
#Install
sudo make install
</source>
Example Source code
Create file opencv_test.cpp with following content


<source lang="c">
#include "cv.h"
#include "highgui.h"
#include <stdio.h> 
// A Simple Camera Capture Framework
int main()
{
  CvCapture* capture = cvCaptureFromCAM( CV_CAP_XIAPI );
  if ( !capture ) {
    fprintf( stderr, "ERROR: capture is NULL \n" );
    getchar();
    return -1;
  }
  // Create a window in which the captured images will be presented
  cvNamedWindow( "mywindow", CV_WINDOW_AUTOSIZE );
  // Show the image captured from the camera in the window and repeat
  while ( 1 ) {
    // Get one frame
    IplImage* frame = cvQueryFrame( capture );
    if ( !frame ) {
      fprintf( stderr, "ERROR: frame is null...\n" );
      getchar();
      break;
    }
    cvShowImage( "mywindow", frame );
    // Do not release the frame!
    //If ESC key pressed, Key=0x10001B under OpenCV 0.9.7(linux version),
    //remove higher bits using AND operator
    if ( (cvWaitKey(10) & 255) == 27 ) break;
  }
  // Release the capture device housekeeping
  cvReleaseCapture( &capture );
  cvDestroyWindow( "mywindow" );
  return 0;
}
</source>
Example downloaded from: http://opencv.willowgarage.com/wiki/CameraCapture
Compiling
g++ -I/usr/local/include/opencv opencv_test.cpp -lopencv_highgui
# result will be a.out
Starting
Normal:
./a.out
Some environments needs to force library path:
LD_LIBRARY_PATH=/usr/local/lib ./a.out




----
==XIMEA API paigaldamine==


=== Solenoid ===
[[File:Actuators solonoid magnetic field.png]]


==== Soleka Relee ====
[[File:Soleka_relee_Peeter_2011.jpg|700px]]


Lae alla ''XIMEA Linux Software Package''
<source lang="bash">
wget http://www.ximea.com/downloads/recent/XIMEA_Linux_SP.tgz
#Untar
tar xzf XIMEA_Linux_SP.tgz
cd package
#Start installation script
#For USB3 cameras - please start script with option -cam_usb30.
sudo ./install -cam_usb30
#For other cameras
sudo ./install


</source>


----


=Tarkvaralised vahendid=
===Cutecom===
*Aadressid:
*162=Mootor1 vasak esimootor
*163=Mootor2 tagumine mootor
*164=Mootor3 parem esimootor
*Parameetrid:
*0 = vabakäik
*1-255 pwm/kiirus ühes suunas AB=0/1 sealjuures 1 on väikseim ja 255 suurim kiirus
*256-511 pwm/kiirus teises suunas AB=1/0 sealjuures 256 on väikseim ja 511 suurim kiirus
*512= võiks olla pidur kui kõik töötab ideaalselt.
----
----


=Kontaktinfo=
=Kontaktinfo=
*'''Lennart Lüsi'''
*'''Lennart Lüsi'''
*'''e-mail:''' llusi@itcollege.ee
*'''e-mail:''' datafly@risk.ee
*'''Skype:''' dataflynaator
*'''Oliver Naaris'''
*'''e-mail:''' oliver.naaris@gmail.com
*'''Kermo Pajula'''
*'''e-mail:''' kermopajula@gmail.com
*'''Marek Kikas'''
*'''e-mail:''' marekk657@gmail.com
*'''Kairo Koik'''
*'''e-mail:''' kairokoik@gmail.com
*'''Raul Prosso'''
*'''Raul Prosso'''
*'''e-mail:''' raul.prosso@gmail.com
*'''e-mail:''' raul.prosso@gmail.com
*'''Skype:''' raul514
*'''Skype:''' raul514
*'''Madis Mark'''
*'''e-mail:''' mmark@itcollege.ee


[[Category:Robootika]]
[[Category:Robootika]]

Latest revision as of 09:58, 18 November 2013

Tiim Peeter eelnevatel aastatel

Robotex 2013

  • 5-8. Koht
  • Tore, et mäger kõik segi peksab!
  • Järgmine aastane kõik täis metallist!

ToDo

Bürokraatia

  • Laupäev 13.aprill Robosse koosolekule, projekti arutama (Kellaaeg Pole Veel Kindel! VAATA! Robolisti)
  • Kaasa lüüa TIIGRIHÜPPE Projektis, et saada klubile RAHA
    • Mõelda kiiremas korras, mida meie arvame, et oleks klubis vaja
      • Tööriistu
      • Materjale
      • Tehnikat
      • Robotile lisa asju jne...
  • Leida sponsoreid, et saada veidi lisa raha juurde
  • Otsida paik, firma, kes laseks korralikus pingis roboti detailid välja

Tehniline

  • Modelleerida roboti põhjaplaat, et pärast CNC pingis välja lõigata
    • Arvestada tuleks:
      • Kondekatega -- Suurust ja mahtuvust peab veel mõtlema
      • Mootorid -- Ei ole täpselt kindel, millised mootorid tulevad, tuleb oodata kontrollerite katsetust
      • Kontrollerid mootoritele -- Samuti ootame, kas uued kontrollerid töötavad
      • Löögimehanism ja rullik -- Seda saab mõelda kuna kaamera ja objektiivi suurused teada
  • Modelleerida roboti teise korruse plaat
    • Enne esimese korruse valmimist ei saa suurt midagi püsivat mõelda.
    • Arvestada tuleks:
      • Emaplaadiga
      • Mikrokontrolleriga
      • Akudega - Neis peaks tulema taas kaks või kolm / Vanalt robotilt

Progemine

  • Lähedalt pallipeale sõit, hetkel keerab liiga vähe (minu valemiga keeras liiga palju)
  • Kontrolleritele vb peab panema veel pidurutust suuremaks
  • Värava peale keeramist testida testida ja veelkord testida
  • Start button realiseerida
  • Botmaster igast asendist tööle kui asi crashib
  • VB peab kontrolleritest veel kiirendust väiksemaks võtma
  • Kiirused ühte kohta
  • Timerid kui kaua mäng on kestnud?
  • Botmaster aknale panna märk, mis värav on valitud
  • Pimesi pealesõidu delayd tuunida
  • Kui pall on käes kuidagi viitab selle palli löömisega ja enda keeramisega värava peale
  • Ehk samme värava peale keeramist kiiremaks
  • Eriku kood mergeda aga enne salvetstada enda värvi parameetrid, better be safe than sorry!
  • Testida, testida ja veelkord testida. ANALÜÜS igale olevale testimisele!!!
  • Võistlusel stardi positsiooni peale mõelda


  • Soleka delay suuremaks
  • Väravale löömist vaadata
  • Kirjutada algoritm ees olevast pallist mööda löömiseks ja TESTIDA
  • Timeout'id state'de vahele

Juppide List

Olemas olevad jupid:

  • PS3 Eye
  • Arduino mega & shield
  • SSD 64GB
  • Omniwheels
  • Mootorid
  • Kontrollerid mootoritele
  • Rulliku mootor
  • Lülitid
  • Varjestatud kaablit
  • Pistikud
  • USB3 Kaamera
  • Fix obje kaamerale
  • Emaplaat, prosega
  • RAM(loogiliselt) Võiks ka olemas olla

Tellitud jupid

Mida vaja tellida

Idee nurk

Tehniline

  • Kasutada kaht või kolme kaamerat
  • Musta joone tuvastamiseks ainult põhjaandur
  • Kui leiame ressurssi proovida 1,5 - 3mm objektiivi kaameral

Progemine

Muud IDEED

Kuidas teha tight serveri boot scripti LINUXIS

  • Make x11vnc autostart upon 'startx'
  • Add a 'x11vnc.desktop' file to your ~/.config/autostart directory (create one if not available) with 3 lines saying  :

[Desktop Entry]

  • Type=Application
  • Exec=x11vnc

Sekundi bug

Arduinos tuleb anda sekund ooteaega, et see üles bootiks.

XIMEA UPDATE FOR OPENCV

Download OpenCV-2.4.3.tar.bz2 from http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/

http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.3/OpenCV-2.4.3.tar.bz2


Unpack

tar -xf OpenCV-2.4.3.tar.bz2

cd OpenCV-2.4.3

Installin XIMEA Update for OpenCV

Download opencv_ximea_update_2_4_3_A.zip and replace OpenCV-2.4.3 files by files in attachment to untarred directory of opencv:

wget http://www.ximea.com/support/attachments/download/804 -O opencv_ximea_update_2_4_3_A.zip
unzip opencv_ximea_update_2_4_3_A.zip
cd ximea_update
cp cap_ximea.cpp ../OpenCV-2.4.3/modules/highgui/src/cap_ximea.cpp
cp CMakeLists.txt ../OpenCV-2.4.3/modules/highgui/CMakeLists.txt
cp OpenCVFindXimea.cmake ../OpenCV-2.4.3/cmake/OpenCVFindXimea.cmake


(opencv_untarred)/highgui/src/cap_ximea.cpp

(opencv_untarred)/highgui/CMakeLists.txt

(opencv_untarred)/cmake/OpenCVFindXimea.cmake

Install needed libraries

sudo apt-get install libgtk2.0-dev
sudo apt-get install pkg-config

cd ../OpenCV-2.4.3
#Build
mkdir build
cd build
# on some systems "-D WITH_TIFF=NO" should be added to options
cmake -D WITH_XIMEA=YES ..
make
#Install
sudo make install

Example Source code Create file opencv_test.cpp with following content

#include "cv.h" 
#include "highgui.h" 
#include <stdio.h>  
// A Simple Camera Capture Framework 
int main() 
{
   CvCapture* capture = cvCaptureFromCAM( CV_CAP_XIAPI );
   if ( !capture ) {
     fprintf( stderr, "ERROR: capture is NULL \n" );
     getchar();
     return -1;
   }
   // Create a window in which the captured images will be presented
   cvNamedWindow( "mywindow", CV_WINDOW_AUTOSIZE );
   // Show the image captured from the camera in the window and repeat
   while ( 1 ) {
     // Get one frame
     IplImage* frame = cvQueryFrame( capture );
     if ( !frame ) {
       fprintf( stderr, "ERROR: frame is null...\n" );
       getchar();
       break;
     }
     cvShowImage( "mywindow", frame );
     // Do not release the frame!
     //If ESC key pressed, Key=0x10001B under OpenCV 0.9.7(linux version),
     //remove higher bits using AND operator
     if ( (cvWaitKey(10) & 255) == 27 ) break;
   }
   // Release the capture device housekeeping
   cvReleaseCapture( &capture );
   cvDestroyWindow( "mywindow" );
   return 0;
}

Example downloaded from: http://opencv.willowgarage.com/wiki/CameraCapture Compiling g++ -I/usr/local/include/opencv opencv_test.cpp -lopencv_highgui

  1. result will be a.out

Starting Normal: ./a.out Some environments needs to force library path: LD_LIBRARY_PATH=/usr/local/lib ./a.out


XIMEA API paigaldamine

Lae alla XIMEA Linux Software Package

wget http://www.ximea.com/downloads/recent/XIMEA_Linux_SP.tgz
#Untar
tar xzf XIMEA_Linux_SP.tgz
cd package
#Start installation script
#For USB3 cameras - please start script with option -cam_usb30.
sudo ./install -cam_usb30
#For other cameras
sudo ./install



Kontaktinfo

  • Lennart Lüsi
  • e-mail: datafly@risk.ee
  • Raul Prosso
  • e-mail: raul.prosso@gmail.com
  • Skype: raul514
  • Madis Mark
  • e-mail: mmark@itcollege.ee
Robot "N:I:M:E:T:U" 2013
Ülikool: Eesti Infotehnoloogia Kolledž
Tüüp: Robootika - Jalgpallirobot
Meeskond "Peeter": Lennart Lüsi
Raul Prosso
Janno Tomingas
Anna Carina Vainola
Ülle Tiitson
Juhendaja: Margus Ernits