root/trunk/doc/html/functions/CommandLayers.html @ 292

Revision 292, 5.4 KB (checked in by behrens, 5 years ago)

add new functions to CommandLayers.html

Line 
1<html>
2<head>
3<title>Command Layer Structure</title>
4<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
5<link type="text/css" rel="stylesheet" href="../style.css">
6</head>
7
8<body bgcolor="#FFFFFF" text="#000001">
9<p class="header">RWTH - Mindstorms NXT Toolbox</p>
10<p align="center">
11<h1>Command Layer Structure</h1>
12</p>
13<hr>
14<p>
15The functions of the RWTH - Mindstorms NXT Toolbox can be categorized into a multiple layer structure. On the lowest layer <b>Low Level and Helper Functions</b> are available,
16which mostly convert parameter modes to bytes words, determined by the LEGO direct commands documentation. The second layer includes <b>Direct NXT Commands</b> which are mapped
17from the LEGO direct command documentation without any limitations and can be identified by the <tt>NXT_*</tt> prefix. Also Bluetooth packet related functions can be found
18in this layer. Layer 3 provides <b>High Level Functions</b> for controlling the NXT motors, sensors and the Bluetooth connection. These functions are basically using the
19Direct NXT Commands of layer 2 to make the motor and sensor controlling more convenient and easily readable for the user. The top layer provides <b>High Level Regulation</b>
20functions for precise motor regulation.
21</p>
22
23<br><br>
24<table  border="2" cellpadding="10" align="center">
25
26  <tr bgcolor="#80FFFF">
27    <td align="center"><b>Layer</b></td>
28    <td><b>Description</b></td>
29    <td valign="top"><b>Output/Motors</b></td>
30    <td valign="top"><b>Input/Sensors</b></td>
31    <td valign="top"><b>General</b></td>
32    <td valign="top"><b>Bluetooth / USB</b></td>
33  </tr>
34
35  <!-- Layer 4 -->
36  <tr bgcolor="#B5F1B4">
37    <td align="center" width="40"><b>4</b></td>
38    <td><b>High Level Regulation</b></td>
39    <td valign="top"><b>MotorRotateAbs</b><br><br><b>WaitForMotor</b></td>
40    <td valign="top">&nbsp;</td>
41    <td valign="top"><b>OptimizeToolboxPerformance</b></td>
42    <td valign="top"><b>COM_MakeBTConfigFile</b></td>
43  </tr>
44
45  <!-- Layer 3 -->
46  <tr bgcolor="#FFFF80">
47    <td align="center"><b>3</b></td>
48    <td><b>High Level Functions</b></td>
49    <td valign="top"><b>SendMotorSettings</b><br>SetMotor<br>SetPower<br>SetAngleLimit<br>SetRampMode<br>SpeedRegulation<br>SyncToMotor<br><br><b>StopMotor</b><br><br><b>GetMotorSettings</b><br>GetMotor<br><br><b>ResetMotorAngle</b><br><br>SetMemoryCount<br>GetMemoryCount</td>
50    <td valign="top"><b>OpenLight<br>OpenSound<br>OpenSwitch<br>OpenUltrasonic<br>OpenAccelerator<br>OpenInfrared<br><br>GetLight<br>GetSound<br>GetSwitch<br>GetAccelerator<br>GetInfrared<br>GetUltrasonic</b><br>USMakeSnapshot<br>USGetSnapshotResults<br><b><br>CloseSensor</b></td>
51    <td valign="top">readFromIniFile<br><br>MAP_GetCommModule<br>MAP_GetInputModule<br>MAP_GetOutputModule<br>MAP_GetSoundModule<br>MAP_GetUIModule<br><br>MAP_SetOutputModule</td>
52    <td valign="top"><b>COM_OpenNXT</b><br>COM_OpenNXTEx<br><br><b>COM_CloseNXT</b><br><br><b>COM_ReadI2C</b><br></td>
53  </tr>
54
55  <!-- Layer 2 -->
56  <tr bgcolor="#F5BB80">
57    <td align="center"><b>2</b></td>
58    <td><b>Direct NXT Commands</b></td>
59    <td valign="top"><b>NXT_SetOutputState<br><br>NXT_GetOutputState<br><br>NXT_ResetMotorPosition</b></td>
60    <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>
61    <td valign="top"><b>NXT_PlayTone</b><br>NXT_PlaySoundFile<br>NXT_StopSoundPlayback<br><br>NXT_StartProgram<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></td>
62    <td valign="top">COM_CreatePacket<br>COM_SendPacket<br>COM_CollectPacket<br><br>COM_SetDefaultNXT<br>COM_GetDefaultNXT<br></td>
63  </tr>
64
65  <!-- Layer 1 -->
66  <tr bgcolor="#FF80FF">
67    <td align="center"><b>1</b></td>
68    <td><b>Low Level Functions:<br>Helper, Conversion and<br> Lookup Functions</b></td>
69    <td valign="top">MOTOR_A<br>MOTOR_B<br>MOTOR_C<br><br><i>byte2outputmode<br>byte2regmode<br>byte2runstate<br>outputmode2byte<br>regmode2byte<br>runstate2byte</i><br><br><i>initializeGlobalMotorStateVar<br>resetMotorRegulation</i></td>
70    <td valign="top">SENSOR_1<br>SENSOR_2<br>SENSOR_3<br>SENSOR_4<br><br><i>byte2sensortype<br>byte2sensormode<br>sensortype2byte<br>sensormode2byte</i></td>
71    <td valign="top">DebugMode<br><i>isdebug</i><br><br>textOut<br><br>tictic (o)<br>toctoc (o)<br><br><i>dec2wordbytes<br>name2commandbytes<br>commandbyte2name<br>wordbytes2dec</i></td>
72    <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></td>
73  </tr>
74
75  <!-- Legend -->
76  <tr>
77    <td colspan="6" >legend: NXT_* = NXT Direct commands without any limitations (mapped to the LEGO direct command documentation)<br>
78&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
79COM_* = Functions related to the NXT communication<br>
80&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
81MAP_* = Functions related to the NXT module maps<br>
82&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
83<b>bold</b> = Main funcions or main group functions<br>
84&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
85<i>italic</i> = private functions<br>
86&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
87(o) = obsolete functions (will be removed in a future release)
88    </td>
89  </tr>
90</table>
91<br><br>
92
93<!-- </font> -->
94
95
96</body>
97</html>
Note: See TracBrowser for help on using the browser.