public:t-622-arti-08-1:cadiarover
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
public:t-622-arti-08-1:cadiarover [2008/03/07 13:40] – eric | public:t-622-arti-08-1:cadiarover [2024/04/29 13:33] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 27: | Line 27: | ||
For the details see PsySpec.xml in the RobotSim directory. | For the details see PsySpec.xml in the RobotSim directory. | ||
+ | ===== Development ===== | ||
+ | === Settings === | ||
- | ===== Development ===== | + | These values define the parameters that will be used in the final evaluation runs: |
- | === Environment === | + | < |
- | You need to set your command and path variables in Visual Studio: | + | |
- | Command="$(PSYCLONE_DIR)\psyclone.exe" | + | < |
- | CommandArguments="spec=$(SolutionDir)\$(ProjectName)\PsySpec.xml" | + | |
- | WorkingDirectory="$(SolutionDir)\release" | + | |
- | Also these environment variables need to be set: | + | < |
- | PSYCLONE_DIR | + | < |
- | PSYCLONE_SDK_DIR | + | |
- | OGRE_HOME | + | |
- | Bjarni Þór Árnason has offered his own setup to those who are interested: http:// | + | < |
- | === C++ === | + | < |
- | You will code C++ Psyclone cranks, i.e. dll code to be executed as threads by the Psyclone middleware. The 3DWorld is one of them. | + | < |
- | Pysclone modules send and receive messages -- reception of messages is dependent on their subscriptions (see Psyclone documentation in psyclone1.1.7.CADIA.win32\html) defined in the PsySpec file. | + | < |
- | You can use the Test function defined in cranks.cpp in the RobotSim project as a template for creating a module. You can define as many cranks as you want. | + | < |
- | Create a new visual studio solution getting most of the settings from the RobotSim.sln. By most, we mean everything but the settings relevant to Ogre. You can also duplicate the RobotSim.sln and 3DWorld.vcproj files - maybe requiring minor manual tweaking in a text editor. | + | < |
- | Shall you start from scratch, you will have to include files from psyclone sdk \ Core Library \ include, and link against CoreLibrary.lib, Psapi.lib and IPHlpApix.lib, | + | < |
- | In any case copy the files dll.* and cranks.* | + | < |
- | Note: a Psyclone module is a set of cranks. You can define more than one module, with more than one crank. | + | < |
- | As for RobotSim.sln, | + | < |
- | To stop: in debug mode, use the debugger stop button; in release mode, 3 times CTRL-C in the Psyclone shell window. | + | < |
- | {{public: | + | < |
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | |||
+ | === Latest Update === | ||
+ | |||
+ | {{public: | ||
+ | |||
+ | bug fix: the graphics for the sensors used the aperture values as the full angle instead of the half-angles | ||
+ | bug fix: energy consumption is now accounted for in the score. | ||
+ | |||
+ | NB: settings have been updated too by the game committee. | ||
+ | |||
+ | {{public: | ||
+ | |||
+ | bug fix: for ultra fast machines, frame period could be 0, yielding ground_speed #INF. | ||
+ | when that's the case, the frame is now skipped | ||
+ | |||
+ | {{public: | ||
+ | |||
+ | added robot.eof message: this indicates | ||
+ | |||
+ | {{public: | ||
+ | Bug fixes: | ||
+ | ids are now part of the hi/low res and collision messages - source code update available on svn: http:// | ||
+ | |||
+ | {{public: | ||
Bug fixes: | Bug fixes: | ||
Line 82: | Line 134: | ||
- objects have a unique ID; they will appear in HiRes sensors reports and LowRes too (in the latter case, only if a HiRes sensing occured first) | - objects have a unique ID; they will appear in HiRes sensors reports and LowRes too (in the latter case, only if a HiRes sensing occured first) | ||
- | - the rover can leave landmarks - orange small cubes - (they have unique IDs too), for an energy cost (L key to leave one manually) | + | - the rover can leave landmarks - orange small cubes - (they have unique IDs too), for an energy cost (L key to leave one manually). Landmarks appear right under the rover: to be perceived, the rover has first to get away from it at least 2 x the collision distance (otherwise you would receive instantly collision messages). |
- on simulation startup, a message " | - on simulation startup, a message " | ||
Line 93: | Line 145: | ||
NB2: don't forget to update - besides the main dll - RobotSim.material and PsySpec.xml | NB2: don't forget to update - besides the main dll - RobotSim.material and PsySpec.xml | ||
+ | |||
+ | ----- | ||
+ | |||
+ | === Environment === | ||
+ | You need to set your command and path variables in Visual Studio: | ||
+ | |||
+ | Command=" | ||
+ | CommandArguments=" | ||
+ | WorkingDirectory=" | ||
+ | |||
+ | Also these environment variables need to be set: | ||
+ | |||
+ | PSYCLONE_DIR = C: | ||
+ | PSYCLONE_SDK_DIR = C: | ||
+ | OGRE_HOME = C: | ||
+ | |||
+ | Bjarni Þór Árnason has offered his own setup to those who are interested: http:// | ||
+ | |||
+ | === C++ === | ||
+ | |||
+ | You will code C++ Psyclone cranks, i.e. dll code to be executed as threads by the Psyclone middleware. The 3DWorld is one of them. | ||
+ | |||
+ | Pysclone modules send and receive messages -- reception of messages is dependent on their subscriptions (see Psyclone documentation in psyclone1.1.7.CADIA.win32\html) defined in the PsySpec file. | ||
+ | |||
+ | You can use the Test function defined in cranks.cpp in the RobotSim project as a template for creating a module. You can define as many cranks as you want. | ||
+ | |||
+ | Create a new visual studio solution getting most of the settings from the RobotSim.sln. By most, we mean everything but the settings relevant to Ogre. You can also duplicate the RobotSim.sln and 3DWorld.vcproj files - maybe requiring minor manual tweaking in a text editor. | ||
+ | |||
+ | Shall you start from scratch, you will have to include files from psyclone sdk \ Core Library \ include, and link against CoreLibrary.lib, | ||
+ | |||
+ | In any case copy the files dll.* and cranks.* in your source directory, load them in your project, remove the Runtime crank, rename Test and code your own crank. Shall you need more cranks, define more functions on the same template. Copy also the PsySpec.xml with no change. Then add the specification of your own crank(s). | ||
+ | |||
+ | Note: a Psyclone module is a set of cranks. You can define more than one module, with more than one crank. | ||
+ | |||
+ | As for RobotSim.sln, | ||
+ | |||
+ | To stop: in debug mode, use the debugger stop button; in release mode, 3 times CTRL-C in the Psyclone shell window. | ||
+ |
/var/www/cadia.ru.is/wiki/data/attic/public/t-622-arti-08-1/cadiarover.1204897224.txt.gz · Last modified: 2024/04/29 13:32 (external edit)