2018-01-23

##APWindowsFormsDemo软件维护手册

###1 引言 

####1.1 编写目的:

供需要在windows下开发AP系列产品控制软件的开发者参考 

####1.2 项目背景:

AP系列产品具有较好的软件支持和使用体验。为了进一步提升开发者对该系列产品使用的信心与降低上手难度,故开发对应的控制库文件APSpecified.dll与相应使用该库文件的WindowsForm Demo(C#)

####1.3 定义:

AP:AutolaborPro系列产品。 


###2 系统说明 

####2.1 系统用途:

与AP系列产品进行串口通信,收发二进制数据。可以解析与封装各个指令,并将各条指令即时解析和可视化。

####2.2 安全保密: 

####2.3 总体说明:

程序APWindowsFormsDemo界面划分为4块,分别是初始化设置、运动控制、数据观察、状态跟踪等。并用图表的方式给出系统主要部分的内部关系。APSpecified.dll提供指令封装与解析对象、指令与小车参数换算方法、指令执行等各个方法。 

####2.4 程序说明:

####2.4.1  APSpecified.dll的说明 

####● 功能:

#####APproto类:

将指令分解为消息头、序号、消息载荷、校验码等结构,并提供相应的设置器,获取器,以及指令的解析与封装方法(使各个参数“各就各位”)。

#####APcommand类:

对已知的AMproto对象进行读取和进行相应动作的响应

#####AMvelTransform类:

根据小车的运动模型参数,如轮径、编码器单圈脉冲数等,进行指令数据与实际速度的换算等

#####SpecialMethod类:

提供适用于AP小车通信协议的byte/int数据类型转换方法

####● 处理:

处理特点和目的,如:用图表说明程序的运行的逻辑流程;



####● 接口:

***打开串口:*** ```APSerialPort:openPort();```

***关闭串口:***```APSerialPort:closePort();```

***开始控制线程:***```APSerialPort:controlStart();```

***发送数据:***```APSerialPort:sendBytes();```

***解析并执行:***```APSerialPort:decodeExecute();```

***请求电量:***```APSerialPort:reqBattery();```

***请求当前编码器累计计数:***```APSerialPort:reqWheelSpeed(short LSpeed, short RSpeed);```

***请求车轮停止驶动:***```APSerialPort:wheelstop();```

***请求车向右行驶:***```APSerialPort:goRight();```

***请求车向后行驶:***```APSerialPort:goBack();```

***请求车向左行驶:***```APSerialPort:goLeft();```

***请求车向前行驶:***```APSerialPort:goAhead();```

***请求重置以恢复对小车的速度控制:***```APSerialPort:reqReset();  ```


####2.4.2    APWindowsFormsDemo的说明

####● 功能:

可以通过界面的“前”、“后”、“左”、“右”四个按键控制小车行进,也可以手动敲入对应的指令信息,控制包括行进在内的行为。当小车回应“错误”时,本软件会自行发送reset重置指令,恢复对小车的控制。接收到信息时,会自动进行解析并将所得信息展示在界面上。用户也可以通过“解析”按键进行解析。   

####● 输入:

通过对应按键(电量“获取”按键等)发送指令或通过编辑框直接输入格式完整且正确Hex指令并发送。

####● 处理:

处理特点和目的,如:用图表说明程序的运行的逻辑流程;程序主要转移条件;对程序的约束条件;程序结束时的出口要求;与下一个程序的通信与联结(运行、控制);由该程序产生并茶馆处理程序段使用的输出数据类型和存放单元;程序运行存储量、类型及存储位置等。   

####● 输出:

接收到的数据将以Hex字符串的形式展现在接收框中,同时自动进行解析,得到的电量信息、状态信息(如“错误”、“重置成功”、“编码器清空失败”等)将展示在“状态跟踪”框内

####● 特有的运行性质:

- 请勿重复点按“初始化”按钮,否则该端口将拒绝访问,由此可能导致程序崩溃;

- 长按“前”、“后”、“左”、“右”按钮,可控制小车驶动;松开按钮则小车立即停止。长按时,程序将以5Hz的频率向小车发送速度指令。

###3 操作环境 

####3.1 设备:

Windows系统

####3.2 支持软件:

Visual Studio

###4 程序清单和流程图:

```flow

st=>start:start

op1=>operation:

op2=>operation:enter baudrate, etc.

op3=>operation:enter

op4=>click "initialize"

st->op1->op2->op3

op1->op3

```

你可能感兴趣的:(2018-01-23)