Adapter util包
Adapter util 包位于Mech-Vision和Mech-Viz软件安装路径下 Communication Component/src/util
文件夹内,其中包含许多模块,并提供了一些通用函数。在编程过程中,先查看 util 包中是否已实现某个功能。若功能已实现,则直接使用即可;若功能未实现,且比较通用,可以将其抽象成一个小函数,添加至 util 包中。
下面分别对各个模块做简单介绍。
database模块
database 模块提供对数据库的操作。视觉系统在运行时会默认创建一个 mechmind.db 数据库文件,此文件用于存储运行过程中的日志。database 模块提供了执行 SQL 语句,查询一条或所有记录的函数。
transforms模块
transforms 模块提供了欧拉角转四元数、四元数转欧拉角、位姿相乘、物体位姿转 TCP 、TCP 转物体位姿、计算物体旋转等函数。第三方库 transforms3d 中也有提供欧拉角转四元数和四元数转欧拉角,但在实际使用过程中,某些情况下 transforms3d 转换的值是错误的。在实际计算时,可优先使用 transforms3d 库,若结果不正确,可使用 transforms 模块提供的自定义转换函数。
timer模块
timer 模块提供了一个便捷的定时器类。在需要定时功能时,可生成 Timer 对象,传入回调函数,调用 start() 即可。使用完成后,不需要销毁 Timer 对象,程序退出会自动销毁。
pose模块
pose 模块提供了一个与 Mech-Viz 表示位姿相同的类,包含平移(单位是米)和旋转(四元数形式),可进行取逆和相乘操作,可从 list 转换或转换到 list 中。 另外,pose 模块也提供了几个关于 pose 的单位转换函数,包括毫米转米、米转毫米、弧度转度、度转弧度、四元数转欧拉角、欧拉角转四元数。