View unanswered posts | View active topics It is currently Thu Jul 31, 2014 6:48 am






Reply to topic  [ 4 posts ] 
interface with the old mindstorms vision camera? 
Author Message
Expert

Joined: Sun Aug 19, 2007 2:43 pm
Posts: 135
Location: New Jersey
Post interface with the old mindstorms vision camera?
I wonder if anyone tries to interface with the old Mindstorms vision command camera with RobotC....


Sun Oct 05, 2008 9:24 pm
Profile WWW
Guru
User avatar

Joined: Sat Mar 01, 2008 12:52 pm
Posts: 1030
Post Re: interface with the old mindstorms vision camera?
hi,
I think this is the wrong forum for this:
Vision Command works only with a specific IR protocol between the IR tower and a RCX brick, so this thread should be moved to the RCX programming forums.
Vision command uses a specific program slot (slot 5) on the RCX to execute the VC interface program.
So VC needs the standard RCX firmware to work with, e.g., also NQC works fine with this.

For further information maybe you wish to read this manual (only available in German):
Quote:
Ford Prefect wrote:
RCX-Code-Möglichkeiten beim Vision Command

Einen "Patch", der alle Funktionen verbindet, gibt es nicht - aber einen Trick:

Ein einfaches Beispiel: Ein Roboter soll, wenn er mit Hilfe der LEGO Cam aus dem Vision Command eine Bewegung wahrnimmt, so lange vorwärts fahren, bis der Tastsensor gedrückt wird. Das ist mit dem Vision Command leider unmöglich. Das Vision Command ergänzt einen Roboter nämlich nicht um Sehvermögen, sondern bietet dieses ausschließlich. Außerdem ist es nur möglich, genaue Angaben zu geben, z.B. OnFor 50. Es ist nicht möglich, den Motor für immer einzuschalten, oder so lange laufen zu lassen, bis in dem selben oder in einem anderen Feld z.B. eine Farbe erkannt wird.

Somit sind wertvolle Funktionen beim VC einfach nicht vorhanden! Aber keine Sorge: Das heißt ja noch lange nicht, dass es überhaupt nicht möglich ist! :-)

Die VC-Software funktioniert folgendermaßen: Man wählt ein bestimmtes Raster aus, so dass das Kamerabild in mehrere Felder unterteilt ist. Jedes Feld bekommt dann einen eigenen Quellcode. Für diesen stehen im VC nur begrenzt viele Befehle zur Verfügung. Die Quellcodes für die verschiedenen Bereiche werden dann beim Ausführen des Programms auf den RCX geladen. Deshalb dauert das Ausführen des Programms auch immer so lange.

Wenn die Kamera z.B. in Feld 1 z.B. eine Bewegung feststellt, sendet sie an den RCX "Message 1". Bei Feld 2 wird "Message 2" gesendet, usw. Insgesamt geht das bis 8, da es höchstens 8 Unterteilungen gibt. Es wird also ein richtiges RCX-Programm runtergeladen, das mit "Message-Sensorwatchern" funktioniert.

Um jetzt ein Programm mit allen Funktionen zu programmieren, starte man zuerst das normale Robotics Invention System. Dort kann man ein vollständiges Programm mit Schleifen, Sensoren, etc. programmieren. Die Befehle für einen bestimmten Kamera-Bereich kommen unter den entsprechenden "Message-Sensorwatcher".

Wenn das Programm fertig ist, muss es auf den RCX downgeloadet werden. Es wird Speicher Nr. 1 empfohlen, es darf auf keinen Fall Nr. 5 sein, da dieser vom VC benutzt wird.

Jetzt wird die VC-Software gestartet. Wähle dort das gewünschte Raster aus und lege fest, worauf die Bereiche reagieren sollen. Jeder Bereich, der benutzt werden soll, muss im Quellcode mindestens einen RCX-Programmblock bekommen. Starte nun das Programm. Wenn der RCX gerade keine Meldung vom VC bekommt (das sieht man auf dem Display an dem Kegel), wähle den Programmspeicher, auf das vorher das RCX-CODE-Programm gespeichert wurde, und drücke auf "Run".

Wenn man NQC benutzen möchte, kann man das RCX-Programm natürlich auch damit programmieren.

(Autor: Johannes Dörr, verändert)


_________________
regards,
HaWe aka Ford
#define S sqrt(t+2*i*i)<2
#define F(a,b) for(a=0;a<b;++a)
float x,y,r,i,s,j,t,n;task main(){F(y,64){F(x,99){r=i=t=0;s=x/33-2;j=y/32-1;F(n,50&S){t=r*r-i*i;i=2*r*i+j;r=t+s;}if(S){PutPixel(x,y);}}}while(1)}


Mon Oct 06, 2008 7:42 am
Profile
Expert
User avatar

Joined: Sat Sep 20, 2008 12:16 pm
Posts: 106
Location: Curently fighting aliens on P3X-828
Post Re: interface with the old mindstorms vision camera?
He might be trying to interface the camera with an NXT brick...

_________________
:downloading:
Sorry, your program could not be downloaded. Please reboot your computer.
FTC Team #2959 Team Smash Bros CLICK HERE.(or click www)
Quote:
What the world needs is more geniuses with humility, there are so few of us left.

Agreed


Tue Oct 07, 2008 5:43 pm
Profile WWW
Guru
User avatar

Joined: Sat Mar 01, 2008 12:52 pm
Posts: 1030
Post Re: interface with the old mindstorms vision camera?
I doubt this, how should this work?
the nxt hasn't got any image processing so how should it recognize blops,
and no USB Master controller (but just an USB slave client plug), so how to attach a slave to an another slave (the USB cam)... :?:

_________________
regards,
HaWe aka Ford
#define S sqrt(t+2*i*i)<2
#define F(a,b) for(a=0;a<b;++a)
float x,y,r,i,s,j,t,n;task main(){F(y,64){F(x,99){r=i=t=0;s=x/33-2;j=y/32-1;F(n,50&S){t=r*r-i*i;i=2*r*i+j;r=t+s;}if(S){PutPixel(x,y);}}}while(1)}


Wed Oct 08, 2008 3:26 am
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 4 posts ] 

Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  



Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.