-
Notifications
You must be signed in to change notification settings - Fork 0
unix8net/Robot
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
截止2013-01-11完成功能: 1.智能指针 2.目标动作 3.基数据包 4.机器人数据包 5.锁 6.条件量 7.坐标变换 8.单例设计模式实现的数据队列 9.调试功能代码 10.函数泛型封装 11.手柄与手柄联网类 12.数学相关类 13.路径规划(还未完善) 14.串口模块类 15.套接字类 16.套接字服务器端,客户端及其相关编码 17.任务类 18.任务队列类 19.多线程类 20.多种enum集合类 21.用于模式切换的类 22.<最重要的类>机器人类 23.实现Epoll机制高并发服务器 24.实现了基于内核的信号灯管理 25.实现观察者设计模式 26.实现机器人与外部通信的协议 27.实现机器人各种组件的初始化 28.采用中介者设计模式解耦Robot RobotSerial 2013-01-16 默认机器人的IP地址为192.168.1.103,后面可能会修改成以参数传递到机器人构造函数中。 Robot.cpp中 在140行左右,去除了对新旧速度相等性判断。--出于控制命令连续性的目的 在207行左右,增加了发送超声波命令的时候,顺带发送控制命令。个人觉得这样不合理 2013-01-17 RobotTask.h中 增加了多次发送,目的是连续性 个人觉得这样不合适 2013-01-19 在手柄点动文件中,还是使用了阻塞模式,但是阻塞时间的大小很短,检测到按下键则连续发送命令,键弹起则停止发送。 2013-01-20 将任务优先队列的queue<shared_ptr<RobotPacket>,list<shared_ptr<RobotPacket> > > serialQueue; 改成:queue<shared_ptr<RobotPacket>,deque<shared_ptr<RobotPacket> > > serialQueue; deque实现效率更高,因为任务对象是在堆内申请,并且不断申请释放,deque则避免了多次向核心申请内存分配 2013-01-21 在RobotPacket中增加了copyFromCharArry函数,该函数将用于将串口收到的数据整体拷贝给一个智能指针管理的数据帧, 避免按字节组装导致的资源消耗。 另外在RobotSerial.cpp的trasMsg中使用该函数,已经注释掉先前代码 由于在copyFromCharArry中需要使用帧的buf,所以修改了RobotBasePacket中的getBuf函数,去掉了const限制 修改了getBuf为内联函数 2013-01-22 - 2013-01-23 实现了Epoll高并发服务器 2013-02-28 实现了观察者设计模式 2013-03-01 修改了多个enum,将其移动到各自的类中。 修改了Epoll服务器的返回状态,在Robot中进行了重新判断 修改了手柄类JoyStick,降低与Robot的耦合,判断代码交给Robot,Joystick只负责数据转发 2013-03-11 增加了手动设置机器人的IP地址和端口来建立服务器 2013-03-12 修改了多个头文件监视哨 增加了机器人与外部通信协议RobotPacketExternal 2013-03-13 修改了RobotTask中dotask的返回值 对RobotPacketExternal测试 2013-03-14 对main文件重构,对Robot类进行划分,功能按函数划分更细 增加了多个宏定义来选择性编译 修改了远程主机退出连接后,机器人不能识别。在 RobotNetEpollOnce文件中的accept部分进行了修改。 2013-03-15 改正了RobotSerial::~RobotSerial(void)中的一个bug,该bug为两次释放conlock_rs232_empty 增加了串口启动失败,程序自动退出 2013-03-24 采用中介者设计模式,解耦机器人类与串口类 机器人与串口的关联已经不再使用信号灯来同步 RobotTask类则取消了RobotSerial这个数据成员 2013-03-28 RobotNetEpollOnce中对套接字设置非阻塞标志 2013-03-29 增加了通过配置文件动态配置机器人参数 2013-05-30 修改了epoll部分的事件,增加了EPOLLRDHUP
About
Robot automatic control systems
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published