机械装备虚拟现实设计及实例分析 课件 第11章 数据驱动关键技术_第1页
机械装备虚拟现实设计及实例分析 课件 第11章 数据驱动关键技术_第2页
机械装备虚拟现实设计及实例分析 课件 第11章 数据驱动关键技术_第3页
机械装备虚拟现实设计及实例分析 课件 第11章 数据驱动关键技术_第4页
机械装备虚拟现实设计及实例分析 课件 第11章 数据驱动关键技术_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十一章数据驱动关键技术战略性新兴领域教材建设团队-重型高端装备制造目录CONTENTS11.1

单片机简介11.1.1单片机的基本机构11.1.2单片机的开发11.1.3Arduino的简介及构成11.1.4ArduinoIDM软件的安装与使用11.1.5Arduino代码编写11.2监测与控制模块与接口设计11.3液压支架虚拟监控案例第11章数据驱动关键技术战略性新兴领域教材建设团队-重型高端装备制造3数据信息知识数字孪生采集、存储和分析处理、整合构建、应用

数字孪生与数据驱动物理实体监测、优化第11章数据驱动关键技术战略性新兴领域教材建设团队-重型高端装备制造3

数字孪生与数据驱动特性实时动态智能闭环实时动态实时动态实时动态优化系统性能数据采集与传输控制与反馈故障监测与预测第11章数据驱动关键技术11.1单片机简介战略性新兴领域教材建设团队-重型高端装备制造4单片机集成电路芯片第11章数据驱动关键技术11.1.1单片机的基本结构战略性新兴领域教材建设团队-重型高端装备制造5第11章数据驱动关键技术11.1.2单片机的开发战略性新兴领域教材建设团队-重型高端装备制造6编写程序:使用C语言或汇编语言编写程序代码编译和调试:使用编译器将程序代码编译成机器码,并在仿真器或开发板上进行调试烧录程序:将编译好的程序烧录到单片机的程序存储器中连接外部设备:通过I/O端口或通信接口将单片机与传感器、显示器、按键等外部设备连接运行和测试:启动单片机,运行程序,并测试其功能是否符合预期32145第11章数据驱动关键技术11.1.3Arduino的简介及构成战略性新兴领域教材建设团队-重型高端装备制造7Arduino板开源硬件平台单片机ArduinoUno微控制器:通常使用ATmega系列单片机,如ATmega328。数字I/O引脚:用于数字信号的输入和输出。模拟输入引脚:用于模拟信号的输入。电源引脚:提供电源输入和输出。串行通信接口:用于与计算机或其他设备进行串行通信。ATmega328第11章数据驱动关键技术11.1.3Arduino的简介及构成战略性新兴领域教材建设团队-重型高端装备制造8ArduinoIDE开源软件平台单片机ArduinoIDELinuxmacOSWindows硬件原理图A电路图BIDE软件C核心库文件D开源第11章数据驱动关键技术11.1.4ArduinoIDM软件的安装与使用战略性新兴领域教材建设团队-重型高端装备制造9Arduino官方网站(https://www.arduino.cc/en/Main/Software)第11章数据驱动关键技术11.1.5Arduino代码编写战略性新兴领域教材建设团队-重型高端装备制造10setup()函数在程序启动时只执行一次,用于初始化变量、设置引脚模式以及其他一次性的配置操作loop()函数会一直循环执行,直到程序停止运行。在这个函数中,您可以编写控制逻辑和读取/写入引脚的代码C/C++编程loop()函数setup()函数第11章数据驱动关键技术11.1.5Arduino代码编写战略性新兴领域教材建设团队-重型高端装备制造11LiquidCrystallcd(12,11,5,4,3,2);//初始化LCD显示屏voidsetup(){lcd.begin(16,2);//设置LCD显示屏的列数和行数lcd.print("Hello,world!");//在LCD显示屏上显示文本}voidloop(){lcd.setCursor(0,1);//在第二行显示当前时间lcd.print(millis()/1000);//显示程序运行时间(秒)delay(1000);//延迟1秒}在这个示例程序中,我们使用了LiquidCrystal库来控制一个16x2字符的LCD显示屏。在loop()函数中,我们使用lcd.setCursor()函数将光标移动到LCD显示屏的第二行,然后使用lcd.print()函数显示程序运行的时间(以秒为单位)。最后,我们使用delay(1000)函数暂停程序1秒钟,以便观察结果。在setup()函数中,我们初始化了LCD显示屏,并在其上显示了“Hello,world!”的文本。第11章数据驱动关键技术11.1.5Arduino代码编写战略性新兴领域教材建设团队-重型高端装备制造12读取和控制数字/模拟引脚与各种传感器通信控制步进电机和伺服电机与计算机或手机通过WiFi或蓝牙模块通信目录CONTENTS11.2

控制和监测模块与接口设计11.2.1动作控制系统11.2.2状态监测系统11.2.3虚拟通道建立

11.1单片机简介11.3液压支架样机的监测和控制实例第11章数据驱动关键技术11.2.1动作控制系统战略性新兴领域教材建设团队-重型高端装备制造3第11章数据驱动关键技术11.2.1动作控制系统战略性新兴领域教材建设团队-重型高端装备制造4电动推杆驱动逻辑控制表L289N直流电机驱动模块digitalWrite(IN1,HIGH);digitalWrite(IN2,LOW);analogWrite(INl,per);digitalWrite(IN2,0);//数字命令直接控制第11章数据驱动关键技术11.2.1动作控制系统战略性新兴领域教材建设团队-重型高端装备制造5直线舵机直线舵机指令包格式第2章题目11.2.2状态监测系统战略性新兴领域教材建设团队-重型高端装备制造6MISO(MastInSlaveOut):主设备输入/从设备输出引脚。该引脚在从模式下发送数据,在主模式下接收数据。MOSI(MastOutSlaveIn):

主设备输出/从设备输入引脚。该引脚在主模式下发送数据,在从模式下接收数据。SCLK(时钟信号):串行时钟信号,由主设备产生。CS/SS:从设备片选信号,由主设备控制。第11章数据驱动关键技术11.2.2状态监测系统

战略性新兴领域教材建设团队-重型高端装备制造7ADXL345传感器ADXL345是一款小而薄的低功耗三轴加速度计,可通过SPI或IIC数字接口访问。引脚说明第11章数据驱动关键技术11.2.2状态监测系统

战略性新兴领域教材建设团队-重型高端装备制造8ADXL345传感器连接对应

digitalWrite(CS,LOW);//选中片选信号

SPI.transfer(address);//发送地址

for(inti=0;i<numBytes;i++)//从address开始读取数据

{

values[i]=SPI.transfer(0x00);

}

digitalWrite(CS,HIGH);//释放片选引脚主要功能代码:SPI通讯方式第11章数据驱动关键技术11.2.2状态监测系统

战略性新兴领域教材建设团队-重型高端装备制造9JY901(九轴)姿态角度传感器引脚说明第11章数据驱动关键技术11.2.2状态监测系统

战略性新兴领域教材建设团队-重型高端装备制造10IIC通讯方式JY901——ArduinoUNO;VCC——VCC;SCL——SCL;SDA——SDA;GND——GND。连接对应主要功能代码JY901.GetAngle();

//JY901获取角度

Serial.print((float)JY901.stcAngle.Angle[0]/32768*180);

//在串口X轴偏转角度

Serial.print((float)JY901.stcAngle.Angle[1]/32768*180);

//在串口Y轴偏转角度

Serial.print((float)JY901.stcAngle.Angle[2]/32768*180);

//在串口轴偏转角度

delay(50);

//打印间隔50ms第11章数据驱动关键技术11.2.2状态监测系统

战略性新兴领域教材建设团队-重型高端装备制造11分体式红外对射开关工作原理1)发射器发射一束红外光束,该光束通常是一个窄的、集中的光束。2)接收器接收红外光束,并通过内部的光电二极管检测光束的状态。3)当红外光束被阻挡或中断时,接收器会产生一个信号,表示开关状态为"开"。4)当红外光束不被阻挡或中断时,接收器不会产生信号,表示开关状态为"关"。第11章数据驱动关键技术11.2.2状态监测系统

战略性新兴领域教材建设团队-重型高端装备制造12使用方法:根据其原理,只需判断其输出高低的状态,高低状态通过串口打印0/1判断。voidhongwai_Sent(){

Serial.print(digitalRead(hongwai),BIN);

//读取红外对射输出引脚的电平高低状态

if(digitalRead(hongwai)==LOW)

{

Serial.print("0");

//表示接收端不在发射端的对射范围

}

else

{

Serial.print("1");

//表示接收端在发射端的对射范围

}}代码实现:第11章数据驱动关键技术

战略性新兴领域教材建设团队-重型高端装备制造111.2.3通道建立方法1.在Unity3D中选择“AssetStore”2.搜索框中输入“Ardity”,下载安装第11章数据驱动关键技术

战略性新兴领域教材建设团队-重型高端装备制造1交互方法连接方式:Arduino开发板与上位机之间通过USB通信线缆连接Unity3D与开发板通过Ardity进行通信。在虚拟监控系统中根据需要通信的串口个数,利用Ardity中的预制体建立多个串口通信对象,对每个串口对象进行配置,包括串口编号PortName以及波特率BaudRate。目录CONTENTS11.1

单片机简介11.2

监测与控制模块与接口设计11.3

液压支架样机监测与控制实例11.3.1单机运动控制11.3.2液压支架虚拟检测11.3.3运动方式与控制方法第11章数据驱动关键技术战略性新兴领域教材建设团队-重型高端装备制造1液压支架样机组成以控制逻辑第11章数据驱动关键技术11.3.1单机运动控制战略性新兴领域教材建设团队-重型高端装备制造1模型导入父子关系设置第11章数据驱动关键技11.3.1单机运动控制战略性新兴领域教材建设团队-重型高端装备制造1第11章数据驱动关键技11.3.1单机运动控制战略性新兴领域教材建设团队-重型高端装备制造1部分程序如下:1)voidHuBangBanFunction(floatHuBangBanRotAngle){XiaoZhou_DingLiang_HuBangBan.localRotation=newQuaternion(0,0,Mathf.Sin((HuBangBanRotAngle-HuBangBanOriginalAngle)*Mathf.PI/360),Mathf.Cos((HuBangBanRotAngle-HuBangBanOriginalAngle)*Mathf.PI/360));}2)voidTuiYiYouGangShenChangFunction(floatTuiYiDistance){TuiYiYouGangDing.localPosition=newVector3(-100f+TuiYiDistance,0f,0f);}3)voidYiJiaFunction(floatDiZuoQianYi){this.transform.position=newVector3((oldx+DiZuoQianYi),oldy,oldz);TuiYiYouGangDing.localPosition=newVector3(-55f-DiZuoQianYi,0f,0f);}4)voidSiLianGanLianDong(floatHouLianGanRotAngle){HouLianGanRotAngle=HouLianGanQingAngle-HouLianGanOriginalAngle;QianLianGanRotAngle=QianLianGanQingAngle-QianLianGanOriginalAngle;LeftLiZhuDing.localPosition=newVector3(0f,0f,-DiZuoLiZhuShenChang-169.5f);RightLiZhuDing.localPosition=newVector3(0f,0f,-DiZuoLiZhuShenChang-169.5f);}5)voidDingLiangCeHuFounction(floa

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论