机械臂上位机监控软件---2.软件架构
软件本身是采用微软的MFC技术,所以软件本身的架构是视图-文档架构,同时引用了一些开源的软件进行机械臂动态视图的渲染。如下是项目的类图,可以清楚的反应产品的架构。
MFC有标准的类架构,这些标准的类如,视图类,文档类,框架类,这里就不多做介绍,网上有大量的介绍文章,本文重点说明机械臂是如何在视图中渲染,显示出来,这里重点用到了两个类
- STLObject:此类主要的功能是通过读取3D模型文件*.stl文件(此类文件也是3D打印的标准文件,常用的结构设计软件都可以导出此类型文件)通过GL进行渲染
- BotDrawer:此类是机械臂的可活动组件结构类,此类头文件中将机械臂的各个可获得组件,声明为一个STObject类,在display函数同通过相对坐标,进行渲染显示:
下图是通过OpenGL对机械臂的4个关活动组件进行渲染,并且定义了相对坐标,及相对旋转角度,这里主要用到两个OpenGL的函数
glTranslatef(0.0, main_axis_offset_to_base_z, 0.0); 其作用是将当前绘制点平移一个(X,Y,Z)的向量
glRotatef(degrees(angles[0]), 0.0, 1.0, 0.0);其作用是控制当前几何图形围绕哪给做旋转多少度,后3个参数分别代表x,y,z轴,取值为布尔类型,1表示围绕对应的轴旋转
以上就是机械臂初始化渲染的过程,看似简单,但这里运用了OpenGL很多的知识,下一篇介绍如何响应鼠标事件,实现机械臂3D视图的拖动旋转。
机械臂上位机监控软件---2.软件架构相关推荐
- 六轴机械臂下位机(arduino)+上位机(ROS+Moveit)---(一)机械臂硬件
六轴机械臂下位机(arduino)+上位机(ROS+Moveit)---(一)机械臂硬件 机械部分 机械臂制作时的注意点!!!(坑) 零件的3D打印 控制器接线问题 机械部分 六轴机械臂在工业领域的运 ...
- 上位机软件开发流程是怎样的?上位机开发软件分享
随着科技的发展, 上位机软件开发已经成为当今社会的一个重要组成部分.上位机软件开发是一种技术,它可以帮助用户更好地控制和管理计算机系统.它可以帮助用户更有效地完成任务,提高工作效率,提高生产力. 上位 ...
- C#与西门子plc通讯上位机 c#软件 工控软件
C#与西门子plc通讯上位机 c#软件 工控软件 1.该程可以实现CSharp与西门子全系列plc(200,200smart,300,1200,1500)的以太网s7通讯,通讯传输快稳定. 2.该程序 ...
- 司创电梯发卡软件_防复制电梯IC卡系统上位机管理软件设计
原标题:防复制电梯IC卡系统上位机管理软件设计 防复制电梯IC卡系统上位机管理软件设计 防复制电梯IC卡系统上位机管理软件设计 上位机程序在VC++6.0开发环境下使用MFC框架类,基于单文档模式和对 ...
- labview GSM上位机监控系统~温度监控,液位监控,粉尘浓度监控,远程遥控~串口通讯~短信远程功能~数据采集,数据存储,报表输出~
labview GSM上位机监控系统温度监控,液位监控,粉尘浓度监控,远程遥控串口通讯短信远程功能数据采集,数据存储,报表输出~ _:5444669332416953labview十年工控
- 六轴机械臂控制器 控制卡 软件 机械臂
六轴机械臂控制器 控制卡 软件 机械臂27400624681113128教学实训设备
- 上位机作图软件 监测温度,单片机串口通信无压力
上位机作图软件 监测温度,单片机串口通信无压力 本帖最后由 zb12138 于 2018-11-11 13:11 编辑 功能 1.与串口调试助手一样,可设串口,自动扫描串口,波特率等等,可收发汉字 2 ...
- 半导体新能源智能装备上位机工业软件设计方案
一.什么是上位机软件 如果说PLC是工业控制的小脑,那么上位机软件就是其大脑.在概念上,控制者和提供服务者是上位机,被控制者和被服务者是下位机,上位机往往是数字信号的处理和命令的下发,下位机往往是模拟 ...
- ATECLOUD智能云测试平台-测试测量/仪器程控/工业控制/上位机开发软件
ATECLOUD智能云测试平台是纳米软件Namisoft推出的文字化语言编程软件平台,可连接.配置并控制市面上常见的硬件仪器.设备,实现仪器设备的自动化测试测量 .工业控制.远程监控.上位机软件开发. ...
最新文章
- AutoMapper用法
- linux 下iptraf监控网卡流量
- iOS Appstore 版本更新
- MassTransit - .NET Core 的分布式应用程序框架
- python跳出两层(多层)循环--使用标志量
- Sql Server 2005资源瓶颈监控(二)
- phprpc的简单使用
- imagej软件分析划痕实验(计算划痕面积及伤口愈合百分比)
- Jupyter 同时支持python2、python3 kernel
- 谭浩强c语言程序设计作业,谭浩强《C语言程序设计》第7章习题解答(13、14题)...
- Codeforces--884A--Book Reading
- 转载:http://www.zzslxx.com/wmy/jy/Chap02/2.1.1.1.htm
- 公务员考试计算机专业类别,专业!公务员专业类别划分
- Kali [Sqlmap]
- Intel汇编-JMP无条件调转
- Tushare 学习 - tushare pro使用
- cmake编译参数重写(正在重写‘/MTd‘用‘/MDd‘)问题
- QQ(腾讯)-群空间-数据库设计
- sql盲注如何修补_如何修复SQL注入漏洞
- android videoview,旋转 视频 orientation,rotation 等
热门文章
- 体验文心一言AI大模型生成推特、谷歌公司、csdn、中国能建、中国兵器、华为云、瑞银集团和贝莱德集团简介
- jstatjmapjhat
- jetson nano 部署yolov5s(从配置环境到推理)
- 如何从下载 UCSC 的 blat 等工具
- 一开机就是coloros恢复模式_「系统」一加氢OS 11升级 这俩功能终于等到 | realme新UI十月见...
- 洛谷4438 [HNOI/AHOI2018]道路
- USB SATA PCIE带宽的换算公式
- goahead服务器性能,goahead web 服务器总体结构
- linux 5识别网卡,Atheros AR8151网卡识别错误在CentOS 5.5系统中的修复
- phpstudy本地配置--dede织梦网