Changes between Version 12 and Version 13 of Documentation

Show
Ignore:
Timestamp:
10/11/10 06:27:57 (3 years ago)
Author:
atorf
Comment:

adding online docu for 4.04

Legend:

Unmodified
Added
Removed
Modified
  • Documentation

    v12 v13  
    55== Toolbox v4.04 (latest stable release) == 
    66 
    7 '''Online documentation files for toolbox 4.04 will soon be online.'''[[BR]] 
    8 [[BR]] Until then, please use your offline toolbox help (up-to-date) or the linls from version 4.03 below (outdated, but only very minor fixes) 
    9 [[BR]] 
     7{{{ 
     8#!html 
     9<b>List of functions</b> 
     10<ul> 
     11  <li><a href="http://www.mindstorms.rwth-aachen.de/documents/downloads/doc/version-4.04/categories.html" target="_blank"> 
     12      <b>By Categories</b></a> <i> (opens in a new window)</i></li> 
     13  <li><a href="http://www.mindstorms.rwth-aachen.de/documents/downloads/doc/version-4.04/abc.html" target="_blank"> 
     14      <b>Alphabetical List</b></a> <i> (opens in a new window)</i></li> 
     15  <li><a href="http://www.mindstorms.rwth-aachen.de/trac/wiki/Documentation#CommandLayerStructure"> 
     16      <b>Command Layers</b></a></li> 
     17</ul> 
     18 
     19<b>Tutorial: Programming Robots</b> 
     20<ul> 
     21  <li><a href="http://www.mindstorms.rwth-aachen.de/documents/downloads/doc/version-4.04/prepare.html" target="_blank"> 
     22      <b>Preparing the workspace</b></a> <i> (opens in a new window)</i></li> 
     23  <li><a href="http://www.mindstorms.rwth-aachen.de/documents/downloads/doc/version-4.04/pc_nxt_communication.html" target="_blank"> 
     24      <b>PC - NXT Communication</b></a> <i> (opens in a new window)</i></li> 
     25  <li><a href="http://www.mindstorms.rwth-aachen.de/documents/downloads/doc/version-4.04/motor_control.html" target="_blank"> 
     26      <b>Motor Control</b></a> <i> (opens in a new window)</i></li> 
     27  <li><a href="http://www.mindstorms.rwth-aachen.de/documents/downloads/doc/version-4.04/sensor_control.html" target="_blank"> 
     28      <b>Sensor Reading</b></a> <i> (opens in a new window)</i></li> 
     29  <li><a href="http://www.mindstorms.rwth-aachen.de/documents/downloads/doc/version-4.04/direct_commands.html" target="_blank"> 
     30      <b>Direct NXT Commands</b></a> <i> (opens in a new window)</i></li> 
     31</ul> 
     32}}} 
     33[[BR]] 
     34 
     35 
     36= Command Layer Structure = 
     37 
     38 * [wiki:CommandLayers Command Layer Structure] of previous releases 
     39 
     40The functions of the RWTH - Mindstorms NXT Toolbox can be categorized into a multiple layer structure. On the lowest layer '''Low Level and Helper  functions''' are available, which mostly convert parameter modes to bytes words, determined by the LEGO direct commands documentation. The second layer includes '''Direct NXT Commands''' which are mapped from the LEGO direct command documentation without any limitations and can be identified by the ''NXT_*'' prefix. Also Bluetooth packet related functions can be found in this layer. Layer 3 provides '''High Level Functions''' for controlling the NXT motors, sensors and the Bluetooth connection. These functions are basically using the Direct NXT Commands of layer 2 to make the motor and sensor controlling more convenient and easily readable for the user. The top layer provides '''High Level Regulation''' functions for precise motor regulation and various utilities. 
     41 
     42{{{ 
     43#!html 
     44<br> 
     45<table  border="2" cellpadding="10" align="center"> 
     46 
     47  <tr bgcolor="#EEEEEE"> 
     48    <td align="center"><b>Layer</b></td> 
     49    <td><b>Description</b></td> 
     50    <td valign="top"><b>Output/Motors</b></td> 
     51    <td valign="top"><b>Input/Sensors</b></td> 
     52    <td valign="top"><b>General</b></td> 
     53    <td valign="top"><b>Bluetooth / USB</b></td> 
     54  </tr> 
     55 
     56  <!-- Layer 4 --> 
     57  <tr bgcolor="#DDDDFF"> 
     58    <td align="center" width="40"><b>4</b></td> 
     59    <td><b>High Level Regulation / Utilities</b></td> 
     60    <td valign="top"><b>NXTMotor</b><br>.display<br>.ReadFromNXT<br>.SendToNXT<br>.Stop<br>.WaitFor<br>.ResetPosition<br><br><b>NXC_MotorControl<br></td> 
     61    <td valign="top">&nbsp;</td> 
     62    <td valign="top"><b>OptimizeToolboxPerformance</b><br><br><b>GUI_WatchMotorState</b><br><b>GUI_WatchSensor</b></td> 
     63    <td valign="top"><b>COM_MakeBTConfigFile</b></td> 
     64  </tr> 
     65 
     66  <!-- Layer 3 --> 
     67  <tr bgcolor="#BBBBFF"> 
     68    <th align="center" rowspan="1"><b>3</b></th> 
     69    <th align="left" rowspan="1"><b>High Level Functions</b></th> 
     70    <td align="left" valign="top"><b>DirectMotorCommand</b><br><br><b>StopMotor</b><br><br><b>SwitchLamp</b><br><br>NXC_ResetErrorCorrection</td> 
     71    <td align="left" valign="top" rowspan="1"><b>OpenLight<br>GetLight<br><br>OpenSound<br>GetSound<br><br>OpenSwitch<br>GetSwitch<br><br>OpenUltrasonic<br>GetUltrasonic<br>USMakeSnapshot<br>USGetSnapshotResults<br><br>OpenAccelerator<br>GetAccelerator<br><br>OpenColor<br>CalibrateColor<br>GetColor<br><br>OpenCompass<br>CalibrateCompass<br>GetCompass<br><br>OpenGyro<br>CalibrateGyro<br>GetGyro<br><br>OpenInfrared<br>GetInfrared<br><br>OpenRFID<br>GetRFID<br><br>CloseSensor</b></td> 
     72    <td align="left" valign="top" rowspan="1"><b>readFromIniFile</b><br><br>MAP_GetCommModule<br>MAP_GetInputModule<br>MAP_GetOutputModule<br>MAP_GetSoundModule<br>MAP_GetUIModule<br><br>MAP_SetOutputModule<br><br>NXC_GetSensorMotorData</td> 
     73    <td align="left" valign="top" rowspan="1"><b>COM_OpenNXT</b><br><b>COM_OpenNXTEx</b><br><br><b>COM_CloseNXT</b><br><br>COM_ReadI2C<br></td> 
     74  </tr> 
     75 
     76   
     77 
     78  <!-- Layer 2 --> 
     79  <tr bgcolor="#9999FF"> 
     80    <td align="center"><b>2</b></td> 
     81    <td><b>Direct NXT Commands</b></td> 
     82    <td valign="top"><b>NXT_SetOutputState<br><br>NXT_GetOutputState<br><br>NXT_ResetMotorPosition</b></td> 
     83    <td valign="top"><b>NXT_SetInputMode<br><br>NXT_GetInputValues</b><br><br>NXT_ResetInputScaledValue<br><br>NXT_LSRead<br>NXT_LSWrite<br>NXT_LSGetStatus</td> 
     84    <td valign="top"><b>NXT_PlayTone</b><br>NXT_PlaySoundFile<br>NXT_StopSoundPlayback<br><br>NXT_StartProgram<br>NXT_GetCurrentProgramName<br>NXT_StopProgram<br><br>NXT_SendKeepAlive<br>NXT_GetBatteryLevel<br>NXT_GetFirmwareVersion<br>NXT_SetBrickName<br><br>NXT_ReadIOMap<br>NXT_WriteIOMap<br><br>NXT_MessageWrite<br>NXT_MessageRead</td> 
     85    <td valign="top">COM_CreatePacket<br>COM_SendPacket<br>COM_CollectPacket<br><br><b>COM_SetDefaultNXT</b><br>COM_GetDefaultNXT<br></td> 
     86  </tr> 
     87 
     88  <!-- Layer 1 --> 
     89  <tr bgcolor="#7777FF"> 
     90    <td align="center"><b>1</b></td> 
     91    <td><b>Low Level Functions:<br>Helper, Conversion and<br> Lookup Functions</b></td> 
     92    <td valign="top"><b>MOTOR_A<br>MOTOR_B<br>MOTOR_C</b><br><br><i>SetMotor</i> (o)<br><i>SetPower</i> (o)<br><i>SetAngleLimit</i> (o)<br><i>SetRampMode</i> (o)<br><i>SetTurnRatio</i> (o)<br><i>SpeedRegulation</i> (o)<br><i>SyncToMotor</i> (o)<br><i>GetMotor</i> (o)<br><i>SetMemoryCount</i> (o)<br><i>GetMemoryCount</i> (o)<br> 
     93    <br><i>byte2outputmode<br>byte2regmode<br>byte2runstate<br>outputmode2byte<br>regmode2byte<br>runstate2byte</i><br><br><i>initializeGlobalMotorStateVar</i> (o)</td> 
     94    <td valign="top"><b>SENSOR_1<br>SENSOR_2<br>SENSOR_3<br>SENSOR_4</b><br><br><i>byte2sensortype<br>byte2sensormode<br>sensortype2byte<br>sensormode2byte</i><br><br><i>waitUntilI2CReady</i></td> 
     95    <td valign="top"><b>DebugMode</b><br><i>isdebug</i><br><br>textOut<br><br><i>dec2wordbytes<br>name2commandbytes<br>commandbyte2name<br>wordbytes2dec</i></td> 
     96    <td valign="top">checkStatusByte<br><br><i>createHandleStruct</i><br><i>checkHandleStruct</i><br><br><i>getLibusbErrorString</i><br><i>getVISAErrorString</i><br><i>getReplyLengthFromCmdByte</i><br><br><i>fantom_proto</i><br><i>libusb_proto</i></td> 
     97  </tr> 
     98 
     99  <!-- Legend --> 
     100  <tr bgcolor="#EEEEEE"> 
     101    <td colspan="6" >legend: NXT_* = NXT Direct commands without any limitations (mapped to the LEGO direct command documentation)<br> 
     102&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
     103COM_* = Functions related to the NXT communication<br> 
     104&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
     105MAP_* = Functions related to the NXT module maps<br> 
     106&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
     107NXC_* = Functions communicating with the embedded NXC program MotorControl<br> 
     108&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
     109<b>bold</b> = Main funcions or main group functions<br> 
     110&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
     111<i>italic</i> = private functions<br> 
     112&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
     113(o) = obsolete / deprecated functions (might be removed in a future release) 
     114    </td> 
     115  </tr> 
     116</table> 
     117<br> 
     118}}} 
     119 
     120 
     121= Older versions = 
    10122 
    11123== Toolbox v4.03  == 
     
    40152 
    41153 
    42 = Command Layer Structure = 
    43  
    44  * [wiki:CommandLayers Command Layer Structure] of previous releases 
    45  
    46 The functions of the RWTH - Mindstorms NXT Toolbox can be categorized into a multiple layer structure. On the lowest layer '''Low Level and Helper  functions''' are available, which mostly convert parameter modes to bytes words, determined by the LEGO direct commands documentation. The second layer includes '''Direct NXT Commands''' which are mapped from the LEGO direct command documentation without any limitations and can be identified by the ''NXT_*'' prefix. Also Bluetooth packet related functions can be found in this layer. Layer 3 provides '''High Level Functions''' for controlling the NXT motors, sensors and the Bluetooth connection. These functions are basically using the Direct NXT Commands of layer 2 to make the motor and sensor controlling more convenient and easily readable for the user. The top layer provides '''High Level Regulation''' functions for precise motor regulation and various utilities. 
    47  
    48 {{{ 
    49 #!html 
    50 <br> 
    51 <table  border="2" cellpadding="10" align="center"> 
    52  
    53   <tr bgcolor="#EEEEEE"> 
    54     <td align="center"><b>Layer</b></td> 
    55     <td><b>Description</b></td> 
    56     <td valign="top"><b>Output/Motors</b></td> 
    57     <td valign="top"><b>Input/Sensors</b></td> 
    58     <td valign="top"><b>General</b></td> 
    59     <td valign="top"><b>Bluetooth / USB</b></td> 
    60   </tr> 
    61  
    62   <!-- Layer 4 --> 
    63   <tr bgcolor="#DDDDFF"> 
    64     <td align="center" width="40"><b>4</b></td> 
    65     <td><b>High Level Regulation / Utilities</b></td> 
    66     <td valign="top"><b>NXTMotor</b><br>.display<br>.ReadFromNXT<br>.SendToNXT<br>.Stop<br>.WaitFor<br>.ResetPosition<br><br><b>NXC_MotorControl<br></td> 
    67     <td valign="top">&nbsp;</td> 
    68     <td valign="top"><b>OptimizeToolboxPerformance</b><br><br><b>GUI_WatchMotorState</b><br><b>GUI_WatchSensor</b></td> 
    69     <td valign="top"><b>COM_MakeBTConfigFile</b></td> 
    70   </tr> 
    71  
    72   <!-- Layer 3 --> 
    73   <tr bgcolor="#BBBBFF"> 
    74     <th align="center" rowspan="1"><b>3</b></th> 
    75     <th align="left" rowspan="1"><b>High Level Functions</b></th> 
    76     <td align="left" valign="top"><b>DirectMotorCommand</b><br><br><b>StopMotor</b><br><br><b>SwitchLamp</b><br><br>NXC_ResetErrorCorrection</td> 
    77     <td align="left" valign="top" rowspan="1"><b>OpenLight<br>GetLight<br><br>OpenSound<br>GetSound<br><br>OpenSwitch<br>GetSwitch<br><br>OpenUltrasonic<br>GetUltrasonic<br>USMakeSnapshot<br>USGetSnapshotResults<br><br>OpenAccelerator<br>GetAccelerator<br><br>OpenColor<br>CalibrateColor<br>GetColor<br><br>OpenCompass<br>CalibrateCompass<br>GetCompass<br><br>OpenGyro<br>CalibrateGyro<br>GetGyro<br><br>OpenInfrared<br>GetInfrared<br><br>OpenRFID<br>GetRFID<br><br>CloseSensor</b></td> 
    78     <td align="left" valign="top" rowspan="1"><b>readFromIniFile</b><br><br>MAP_GetCommModule<br>MAP_GetInputModule<br>MAP_GetOutputModule<br>MAP_GetSoundModule<br>MAP_GetUIModule<br><br>MAP_SetOutputModule<br><br>NXC_GetSensorMotorData</td> 
    79     <td align="left" valign="top" rowspan="1"><b>COM_OpenNXT</b><br><b>COM_OpenNXTEx</b><br><br><b>COM_CloseNXT</b><br><br>COM_ReadI2C<br></td> 
    80   </tr> 
    81  
    82    
    83  
    84   <!-- Layer 2 --> 
    85   <tr bgcolor="#9999FF"> 
    86     <td align="center"><b>2</b></td> 
    87     <td><b>Direct NXT Commands</b></td> 
    88     <td valign="top"><b>NXT_SetOutputState<br><br>NXT_GetOutputState<br><br>NXT_ResetMotorPosition</b></td> 
    89     <td valign="top"><b>NXT_SetInputMode<br><br>NXT_GetInputValues</b><br><br>NXT_ResetInputScaledValue<br><br>NXT_LSRead<br>NXT_LSWrite<br>NXT_LSGetStatus</td> 
    90     <td valign="top"><b>NXT_PlayTone</b><br>NXT_PlaySoundFile<br>NXT_StopSoundPlayback<br><br>NXT_StartProgram<br>NXT_GetCurrentProgramName<br>NXT_StopProgram<br><br>NXT_SendKeepAlive<br>NXT_GetBatteryLevel<br>NXT_GetFirmwareVersion<br>NXT_SetBrickName<br><br>NXT_ReadIOMap<br>NXT_WriteIOMap<br><br>NXT_MessageWrite<br>NXT_MessageRead</td> 
    91     <td valign="top">COM_CreatePacket<br>COM_SendPacket<br>COM_CollectPacket<br><br><b>COM_SetDefaultNXT</b><br>COM_GetDefaultNXT<br></td> 
    92   </tr> 
    93  
    94   <!-- Layer 1 --> 
    95   <tr bgcolor="#7777FF"> 
    96     <td align="center"><b>1</b></td> 
    97     <td><b>Low Level Functions:<br>Helper, Conversion and<br> Lookup Functions</b></td> 
    98     <td valign="top"><b>MOTOR_A<br>MOTOR_B<br>MOTOR_C</b><br><br><i>SetMotor</i> (o)<br><i>SetPower</i> (o)<br><i>SetAngleLimit</i> (o)<br><i>SetRampMode</i> (o)<br><i>SetTurnRatio</i> (o)<br><i>SpeedRegulation</i> (o)<br><i>SyncToMotor</i> (o)<br><i>GetMotor</i> (o)<br><i>SetMemoryCount</i> (o)<br><i>GetMemoryCount</i> (o)<br> 
    99     <br><i>byte2outputmode<br>byte2regmode<br>byte2runstate<br>outputmode2byte<br>regmode2byte<br>runstate2byte</i><br><br><i>initializeGlobalMotorStateVar</i> (o)</td> 
    100     <td valign="top"><b>SENSOR_1<br>SENSOR_2<br>SENSOR_3<br>SENSOR_4</b><br><br><i>byte2sensortype<br>byte2sensormode<br>sensortype2byte<br>sensormode2byte</i><br><br><i>waitUntilI2CReady</i></td> 
    101     <td valign="top"><b>DebugMode</b><br><i>isdebug</i><br><br>textOut<br><br><i>dec2wordbytes<br>name2commandbytes<br>commandbyte2name<br>wordbytes2dec</i></td> 
    102     <td valign="top">checkStatusByte<br><br><i>createHandleStruct</i><br><i>checkHandleStruct</i><br><br><i>getLibusbErrorString</i><br><i>getVISAErrorString</i><br><i>getReplyLengthFromCmdByte</i><br><br><i>fantom_proto</i><br><i>libusb_proto</i></td> 
    103   </tr> 
    104  
    105   <!-- Legend --> 
    106   <tr bgcolor="#EEEEEE"> 
    107     <td colspan="6" >legend: NXT_* = NXT Direct commands without any limitations (mapped to the LEGO direct command documentation)<br> 
    108 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    109 COM_* = Functions related to the NXT communication<br> 
    110 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    111 MAP_* = Functions related to the NXT module maps<br> 
    112 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    113 NXC_* = Functions communicating with the embedded NXC program MotorControl<br> 
    114 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    115 <b>bold</b> = Main funcions or main group functions<br> 
    116 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    117 <i>italic</i> = private functions<br> 
    118 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    119 (o) = obsolete / deprecated functions (might be removed in a future release) 
    120     </td> 
    121   </tr> 
    122 </table> 
    123 <br> 
    124 }}} 
    125  
    126  
    127 = Older versions = 
    128  
    129154== Toolbox v4.02 == 
    130155