Peeter 2013: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Mernits (talk | contribs)
Rprosso (talk | contribs)
 
(20 intermediate revisions by 4 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:jtomingas|Janno Tomingas]]<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 22: Line 22:


=Robotex 2013=
=Robotex 2013=
*5-8. Koht
*Tore, et mäger kõik segi peksab!
*Järgmine aastane kõik täis metallist!
==ToDo==
==ToDo==


Line 50: Line 53:


===Progemine===
===Progemine===
*Kui me tahame säilitada 2012 aasta koodi ka robovison2013 SVN-is tuleks teha commit kiiremas korras!
*Lähedalt pallipeale sõit, hetkel keerab liiga vähe (minu valemiga keeras liiga palju)
*Võiks proovida koodi, mis Lennart vb veidi leiutanud
*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==
==Juppide List==
Line 59: Line 84:
*SSD 64GB
*SSD 64GB
*Omniwheels
*Omniwheels
===Tellitud jupid===
*USB3 Kaamera
*Fix obje kaamerale
*Emaplaat, prosega
*RAM(loogiliselt) Võiks ka olemas olla
===Mida vaja tellida===
*Mootorid
*Mootorid
*Kontrollerid mootoritele
*Kontrollerid mootoritele
Line 73: Line 90:
*Varjestatud kaablit
*Varjestatud kaablit
*Pistikud
*Pistikud
*USB3 Kaamera
*Fix obje kaamerale
*Emaplaat, prosega
*RAM(loogiliselt) Võiks ka olemas olla
===Tellitud jupid===


===Mida vaja tellida===


==Idee nurk==
==Idee nurk==
Line 85: Line 109:
===Muud IDEED===
===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=
=XIMEA UPDATE FOR OPENCV=
Open page http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/


Download OpenCV-2.4.3.tar.bz2
Download OpenCV-2.4.3.tar.bz2 from http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/
 
<source lang="bash">
http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.3/OpenCV-2.4.3.tar.bz2
</source>
 
 


Unpack  
Unpack  
 
<source lang="bash">
tar -xf OpenCV-2.4.3.tar.bz2
tar -xf OpenCV-2.4.3.tar.bz2


cd OpenCV-2.4.3
cd OpenCV-2.4.3
</source>


Update
==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:
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:
<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>


(opencv_untarred)/highgui/src/cap_ximea.cpp
(opencv_untarred)/highgui/src/cap_ximea.cpp
Line 111: Line 161:
sudo apt-get install libgtk2.0-dev
sudo apt-get install libgtk2.0-dev
sudo apt-get install pkg-config
sudo apt-get install pkg-config
Build
 
cd ../OpenCV-2.4.3
#Build
mkdir build
mkdir build
cd build
cd build
Line 120: Line 172:
sudo make install
sudo make install
</source>
</source>
Example
Example Source code
Source code
Create file opencv_test.cpp with following content
Create file opencv_test.cpp with following content
<source lang="c">
#include "cv.h"  
#include "cv.h"  
#include "highgui.h"  
#include "highgui.h"  
Line 157: Line 210:
   return 0;
   return 0;
}
}
 
</source>
Example downloaded from: http://opencv.willowgarage.com/wiki/CameraCapture
Example downloaded from: http://opencv.willowgarage.com/wiki/CameraCapture
Compiling
Compiling
Line 167: Line 220:
Some environments needs to force library path:
Some environments needs to force library path:
LD_LIBRARY_PATH=/usr/local/lib ./a.out
LD_LIBRARY_PATH=/usr/local/lib ./a.out
==XIMEA API paigaldamine==
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>


----
----

Latest revision as of 08: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