plcZ摇臂钻床设计_第1页
plcZ摇臂钻床设计_第2页
plcZ摇臂钻床设计_第3页
plcZ摇臂钻床设计_第4页
plcZ摇臂钻床设计_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

1、电气控制与PLC三级项目报告书项目名称:智能数控钻床系统设计班级:组别:组长:组员:指导教师:时间: 电气工程学院三级项目任务书课程名称: 电气控制与PLC 基层教学单位: 仪器科学与工程系 指导教师:组号组长姓名秘书姓名设计题目智能数控钻床系统设计设计技术参数1. 通过电气仿真软件实现Z3040钻床仿真;2. 通过STM32单片机实现硬件设计,具有触摸屏与远程控制功能,能展示运动控制基本功能(步进电机控制)、照明电路功能;3. 通过组态王实现钻床运动监控;(wincc)4. 如能实现数控加工中心仿真,则起评分数加20%设计要求1. 题目按组完成任务,每组设组长一名、秘书一名、组员1-2人;2

2、. 报告书需阐明国内外现状,参考文献近五年的不少于10篇;3. 需要提供可执行的源代码与实物运行视频一份;4. 需提供PPT一份、三级项目报告一份。参考资料“电气控制”类图书及论文资料“可编程控制器”类图书及论文资料“STM32单片机”类图书及论文资料“”应完成内容分析设计要求、查资料、确定方案,设计梯形图、设计上位组态撰写课程设计说明书,答辩指导教师签字基层教学单位主任签字说明:1、此表一式三份,系、学生各一份,报送院教务科一份。 2、学生那份任务书要求装订到课程设计报告前面。电气摘要Z3040 型摇臂钻床适用于单件或批量生产带有多孔的大型零件的孔加工,是机械加工车间常用的机床,在机械行业中

3、得到了广泛应用。但继电器接触器控制方式电路接线复杂,触电多, 成本很高, 今后的逻辑修改和增加功能比较困难等诸多缺点。PLC控制系统与继电器接触器电气控制系统相比,具有结构简单,编程方便,调试周期短,可靠性高,对工作环境要求低等一系列优点。因此对 Z3040 摇臂钻床控制系统PLC改造是非常必要的。【关键字】可编程控制器,摇臂钻床,梯形图,电气控制系统AbstractModel Z3040 rocker-arm drilling machine, which is widely used in mechanical industry, is suitable for hole processi

4、ng of single piece or mass production of large-scale parts with porous holes. It is a common machine tool used in mechanical processing workshop and has been widely used in the mechanical industry. But the circuit connection of relay-contactor control mode is complex, the electric shock is much more

5、, the cost is very high, and it is difficult to modify and increase the function of logic in the future. Compared with the relay-contactor electric control system, the PLC control system has many disadvantages. It has a series of advantages such as simple structure, convenient programming, short deb

6、ugging period, high reliability and low requirement for working environment. Therefore, to Z3040 rocker drilling machine control system PLC The transformation is very necessary.Keywords: programmable controller, radialdrilling machine, ladder diagram, electrical control system目录第一章、Z3040摇臂钻床简介-1 -1.

7、1 钻床简介- 1 -1.2 摇臂钻床工作原理- 2 -1.3 Z3040摇臂钻床的前景- 2 -1.4 智能数控钻床(机床)的国内外现状- 3 -第二章、设计要求- 4 -第三章、设计中所需软硬件- 4 -3.1 组态王- 4 -3.2 V-ELEQ- 4 -3.3 STM32单片机- 5 -3.4 CADe_SIMU- 5 -第四章、Z3040的电路结构及运动形式- 5 -4.1 主电路分析- 6 -4.2 控制电路- 6 -4.2.1 主运动- 6 -4.2.2 摇臂上升或下降控制- 6 -4.2.3 主轴箱和立柱的松开及夹紧控制- 7 -4.2.4 控制电路保护- 7 -第五章、CAD

8、e_SIMU电气仿真- 8 -第六章、基于组态王的动画仿真- 10 -第七章、组态王与单片机结合- 12 -附录一:组态王程序接口与源代码- 14 -附录二:单片机接口及程序源代码- 15 -附录三:小组成员工作照片- 24 -附录四:工作回顾与感想- 25 - 第一章、Z3040摇臂钻床简介1.1 钻床简介Z3040 摇臂钻床适合于在大、中型零件上进行钻孔、扩孔、铰孔及攻螺纹等进行加工, 在具有工艺装备的条件下还可以进行镗孔。Z3040 摇臂钻床基本结构由底座、立柱、摇臂和主轴箱等几部分构成(如图1.1.1)。图 1.1.1 Z3040 摇臂钻床结构图1底座 2内立柱 3外立柱 4丝杠 5,

9、6电动机7摇臂 8主轴箱 9主轴 10工作台上图为摇臂钻床的结构图,工件固定在工作台之上,工作台放在底座之上,主运动和进给运动由电动机6驱动。主轴箱可以在摇臂来回移动,升降电动机5的驱动丝杠, 再由丝杠传动, 摇臂可以沿着立柱上下移动,外立柱可以围绕内立柱来回旋转。1.2 摇臂钻床工作原理如图1.2.1为Z3040控制系统原理图图1.2.1 Z3040控制系统原理图如图1.2.2为Z3040控制系统主要电气元件图 图1.2.2 Z3040控制系统主要电气元件图摇臂钻床除了主轴的旋转和进给运动外,还有摇臂的上升和、下降及立柱的夹紧和放松。摇臂的上升、下降由一台交流异步电动机拖动,主轴箱、立柱的夹

10、紧和放松由另一台交流电动机拖动。Z3040摇臂钻床是通过电动机拖动一台齿轮泵,供给夹紧装置所需要的压力油。而摇臂的回转和主轴箱的左右移动通常采用手动。此外还有一台冷却泵电动机对加工的刀具进行冷却1.3 Z3040摇臂钻床的前景Z3040摇臂钻床具有结构简单实用、操作维修方便等特点,而且将其他钻床的优点聚为一体,使之加大了钻床的工作范围。如镗孔、攻丝、套丝、钻、铰、扩孔等功能,广泛用于中小型企业、乡镇和个体工业的机械加工。对Z3040钻床做进一步的智能自动化改造,有利于提高工厂生产效率促进社会智能化自动化的发展。随着可编程逻辑控制器(PLC)的发展,应用PLC控制技术改造Z3040摇臂钻床成了发

11、展趋势。PLC电气控制系统与传统的继电器-接触器电气控制系统相比,具有结构简单、编程方便、调试周期短、可靠性高、抗干扰能力强、故障率低,对工作环境要求低等一系列优点。应用PLC设计改造的智能化数控机床将很大程度满足当今信息化社会的需求,且具有很大的市场发展潜力。1.4 智能数控钻床(机床)的国内外现状大多数企业在生产上使用的Z3040摇臂钻床的电气控制系统,还是采用采用继电器接触器控制方式,而这种控制方式存在着明显的缺陷和隐患。极易发生故障。而且,由于线路复杂,要想找到问题所在也相当的困难。随着信息化产业的高速发展,数控机床的功能日趋完善,数控机床已经完全取代了普通机床,而数控技术是机械加工自

12、动化的基础,是数控机床的核心技术,其水平高、低关系到国家战略地位、国民经济水平和体现国家综合实力的水平。(1)国外现状:早在上世纪六十年代国外就已经出现了可编程序控制器(PLC)的应用,之后世界各国争相在该领域投入大量资金进行新产品的开发,在1995年西门子又成功地开发出了S7200、S7300系列,它具有 TD 200和 COROS OPS操作模板为用户提供了方便人机界面,用户程序三级口令保护,极强的计算性能,完善的指令集,MPI接口和通过工业现场总线PROFD3US以及以太网联网的网络能力,强劲的内部集成功能,全面的故障诊断功能;随着技术发展。将PLC应用于传统的Z3040钻床成了必要的发

13、展趋势。模块式结构可用于各处性能的扩展,脉冲输出晶闸管步进电机和直流电机;快速的指令处理大大缩短了循环周期,并采用了高速计数器,高速中断处理可以分别响应过程事件,大幅度降低了成本。智能数控机床涌现至今的50年,随科技、特别是微电子、盘算机技巧的前进而不断发展。美、日、德三国是当今世上在智能数控机床科研、设计、制作和应用上,技巧最先进、经验最多的国家。因其社会前提不同,各有特点。美国的特点是,政府器重机床工业,美国国防等部门不断提出机床的发展方向、科研任务和供给充足的经费,且网罗世界人才,特别讲究“效率”和“创新”,重视基础科研。因而在机床技巧上不断创新,如1852年研制降生世界的第一台 数控机

14、床、1958年创制出加工中心、70年代初研制成fms、1987年开创开放式数控系统等。因美国起首联合汽车、轴承生产需求,充分发展了大批大批生产自动化的主动线,而且电子、盘算机技巧在世界上领先,因此其高性能智能数控机床技巧在世界上也一直领先。德国则特别重视科学实验,理论与实践相联合,基础科研与利用技巧科研并重。德国的智能数控机床质量及性能良好、先进实用。尤其是大型、重型、精密数控机床。德国特别注重数控机床主机及配套件之先进实用,其机、电、液、气、光、刀具、测量、数控系统、各种功效部件在质量、性能上居世界前列。(2) 国内现状:我国智能数控机床总体技术开发能力和技术基础薄弱,信息化技术应用程度不高

15、。行业现有的信息化技术来源主要依靠引进国外技术,且外方在许多高新产品的核心技术上具有掌控地位,我们对国外技术的依存度较高,对引进技术的消化仍停留在掌握已有技术和提高国产化率上,没有上升到形成产品自主开发能力和技术创新能力的高度。具有高精度、高速、高效、复合功能、多轴联动等特点的高性能实用数控机床基本上还得依赖进口。与国外相比,我国的差距主要是机床高速高效化和精密化上。随着PLC技术在我国的迅猛发展,我们和国外先进技术的差距会不断缩小。因此,抓住这个有利时机进一步促进PLC技术的推广与应用,是提高我国工业自动化水平的迫切任务。第2章、 设计要求(1) 智能数控机床具有主轴电动机、摇臂升降电动机、

16、液压泵电动机和冷却泵电动机四台电动机。它的主轴旋转运动和进给运动都由主电动机拖动,两个运动都具有多级变速以适应不同工件的加工,进给变速结构和主轴变速结构都在主轴箱中,在加工螺纹时,主轴的正反转通过机械方式实现,所以主电机只需单向旋转。(2) 摇臂升降电动机需要正反转,同时摇臂在上下移动时必须保证摇臂松开了之后才能移动,停止移动之后才能夹紧。(3) 液压泵电动机必须实现正反转,通过压力油进入不同的油腔,完成摇臂、立柱和主轴的松紧,摇臂的回转和主轴箱的左右移动通常采用手动。(4) 此外还有一点冷却泵电动机对加工的刀具进行冷却,只要求单向旋转;同时必须具有连锁与保护环节以及安全照明、信号指示电路。第

17、三章、设计中所需软硬件3.1 组态王组态王,即组态王开发监控系统软件,是新型的工业自动控制系统,它以标准的工业计算机软、硬件平台构成的集成代传统的封闭式系统。组态王集成了对KingHistorian的支持,且支持数据同时存储到组态王历史库和工业库,极大地提高了组态能够更好的满足大点数用户对存储容量和存储速度的要求。KingHistorian是亚控新近推出的独立开发的工业数据库。支持高达100万点、256个并发客户同时存储和检索数据、每秒检索单个变量超过20000条记录的强大功能。能够更好地满足高端客户对存储速度和存储容量的要求,完全满足了客户实时查看和检索历史运行数据的要求。3.2 V-ELE

18、QV-ELEQ仿真软件是学习电机控制和电路线路的重要软件,它不仅能实现工厂的3维仿真使虚拟现实仿真更加逼真而且可以把通过仿真验证的控制逻辑单元可用作监视及控制模块,使之能够实现并行工程及软件/硬件的并行设计3.3 STM32单片机单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。单片机诞生于

19、1971年,经历了SCM、MCU、SoC三大阶段,随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows和Linux操作系统。单片机作为计算机发展的一个重要分支领域,根据发展情况,从不同角度,单片机大致可以分为通用型/专用型、总线型/非总线型及工控型/家电型。使用组态王与单片机组合可以实现简单的系统仿真。3.4 CADe_SIMU应用CAD_SIM

20、U这一款绘图仿真软件来设计电路,非常容易上手,不但可以快捷绘制电气线路图,而且还能将绘制电气线路图实现电路仿真。CADe_SIMU_SIMU线路图模拟仿真软件不但包括各种电气元件符号,而且对应每种器件还有多种类型,并做成工具条提供使用,是该软件最突出的特点,也是该软件和其他软件相比较体现出的最大好处。第四章、Z3040的电路结构及运动形式如图4.1.1为所设计的智能数控机床控制系统原理图图4.1.1 智能数控机床控制系统原理图4.1主电路分析在数控机床系统主电路中,总共四个电动机控制钻床各种运动和冷却,分别为主电动机M1,M1 ,摇臂升降电动机M2 ,液压泵电动机M3和冷却电动机M4。(1)

21、低压断路器QF控制三相电源,冷却电动机。M4输出功率一般很小,直接由开关SA1控制起停。(2) 电动机M1单向旋转通过接触器KM1控制,主轴的正反转是液压系统和机械系统同时控制,由于主动输出功率较大,所以设有热继电器FR1作为过载保护。(3) 摇摆能上升和下降,电动机M2实现正反转,通过接触器KM2、KM3来控制,同时设有热继电器FR2作为过载保护。(4) 液压泵电动机M3需要正反转,通过接触KM4、KM5来控制,由于在松开和夹紧的时候都需要大功率的液压控制,所以设有热继电器FR3作为过载保护。4.2控制电路4.2.1主运动按下起动按钮开关SB2,接触器KM1得电并自锁,主轴电动机M1起动并运

22、转。按下停止按钮开关SB1,接触器KM1释放,主轴电动机M1停转。4.2.2摇臂上升或下降控制按下上升(或下降)按钮开关SB3(或SB4),时间继电器 KT得电,KT触头( 14-15闭合使接触器KM4得电,同时常开触头KM4 (1-18)闭合,电磁阀YV得电,液压泵电动机M3 接通电源正向旋转,供给压力油,压力油经二位六通阀进入摇臂松开油腔,压力油作用下,先推动活塞,通过活塞推动菱形块,进而使摇臂松开。待摇臂完全松开后,活塞缸中的活塞杆压下行程开关SQ2,使 其常闭触点 SQ2(714)断开,KM4线圈失电,电磁阀YV 失电,电动机M3 停止工作。同时常开触点SQ2( 8-9)闭合,接触器K

23、M2 (或 KM3 )线圈通电吸合,摇臂升降电动机M2启动正向旋转,使摇臂上升(下降)。当摇臂上升(或下降)到达预定工作位置时,松开上升(或下降)按钮开关SB3(或SB4),则KT、KM2或(KM3)线圈断电,升降电动机M2停止转动。经延时,延时断电常闭按钮KT闭合,KM5线圈得电,同时电磁阀YV得电,使液压泵电机M3反向旋转,压力油经另一条油路流入二位六通阀,进入摇臂夹紧油腔,反向推动活塞,在通过活塞推动菱形块,进而使摇臂夹紧。待摇臂夹紧后,活塞缸中的活塞杆压动行程开关SQ3,使常闭触点SQ3断开,KM5线圈失电,电磁阀YV失电,液压泵电动机M3停止工作,电磁阀YV复位。由于摇臂升降电洞机M

24、3有一定的惯性, 时间继电器的延时触头用来保证升降电机完全停转之后才夹紧。延时的时间视情况而定,一般在1-3 秒,同时需要过载保护,过载保护由热继电器FR2完成 。行程开关 SQ1、SQ6 用作上升和下降极限位置保护。若上升到极限位置,常闭触点SQ1 断开 ,此时,可用SB4 按钮使摇臂下降。若下降到极限位置,常闭行程开关SQ6 断开,此时可用SB3 按钮使摇臂上升。4.2.3主轴箱和立柱的松开及夹紧控制立柱与主轴箱均采用液压操纵夹紧与放松,两者同时进行的,工作时要求 电磁阀 YV不通电。松开与夹紧分别由按钮开关SB5 和按钮开关 SB6 控制。指 示灯 HL1 、HL2 指示其动作。按下按钮

25、开关 SB5 时,KM4线圈通电,M3 正向旋转,此时 YV 没有的作用,当液压泵送出压力油,压力油通过二位六通阀进入立柱与主轴箱松开油腔,先推动活塞干, 在通过活塞杆推动菱形块使主轴箱和立柱同时松开。当立柱和主轴箱同时松开后,行程开关SQ4 不受压复位,常闭触头SQ4闭合,指示灯HL1亮,表明立柱与主轴箱已经松开。可以在摇臂上移动主轴箱,当移动到预定位置时,按下夹紧按钮开关SB6时,KM5线圈通电,M3电机反向旋转,液压泵供给压力油进入夹紧油腔,使立柱与主轴箱同时夹紧。当确定已经夹紧,压下行程开关 SQ4,常闭触头SQ4 断开, HL1灯灭,常开触头SQ4 闭合, HL2灯亮表示立柱和主轴箱

26、都已经夹紧。同时需要过载保护,过载保护由热继电器FR3完成4.2.4控制电路保护行程开关 SQ1 和 SQ6 实现摇臂上升和下降的限位保护。行程开关SQ2 被压下表示摇臂松开到位,可以实现上升和下降。行程开关SQ3被压下表示摇臂完全夹紧,液压泵电动机M3停止运转。断电延时继电器KT作用是防止摇臂由于惯性还在上升(或下降)时就将其夹紧。M2电动机正反转具有电气互锁,M3电动机正反转具有电气互锁。电磁阀YV线圈电路中串接按钮开关SB5和SB6的常闭触头,保证立柱与主轴箱松开、夹紧操作时, 压力油只进入立柱主轴箱夹紧油腔而不进入摇臂夹紧油腔。第五章、CADe_SIMU电气仿真5.1 利用CADe_S

27、IMU所做的仿真系统:使用CADe_SIMU软件可以仿真所设计的智能数控钻床系统电路仿真图。图5.1.1为整体效果图图5.1.1 整体电路CAD效果图图5.1.2为主电路图图5.1.2 主电路CAD效果图图5.1.3为控制电路CAD效果图图5.1.3 控制电路CAD效果图图5.1.4为指示灯电路CAD效果图图5.1.4 指示灯电路CAD效果图第六章、基于组态王钻床监控系统6.1 组态王设计系统流程组态王软件结构由工程管理器、工程浏览器及运行系统三部分构成。(1) 创建新工程。为工程创建一个目录用来存放与工程相关的文件。(2) 定义硬件设备并添加工程变量。添加工程中需要的硬件设备和工程中使用的变

28、量,包括内存变量和I/O变量。根据这次项目我们定义了钻头位置、控制开关、指示灯等。(3) 制作图形画面并定义动画连接。按照实际工程的要求绘制监控画面并使静态画面随着过程控制对象产生动态效果。这次我们需要设计一个控制钻头钻孔的动画,因此创建动画时需要绘制出电动机、动力钻头、限位开关和控制开关等(4) 编写命令语言。通过脚本程序的编写以完成较复杂的操作上位控制(5) 进行运行系统的配置。对运行系统、报警、历史数据记录、网络、用户等进行设置,是系统完成用于现场前的必备工作。(6) 保存工程并运行。6.2 组态王连接流程图6.2.1 定义变量再进行动画连接见附录一。6.3 组态王设计结果如图6.2.1

29、为组态王仿真的整体效果图 图6.2.1 组态王仿真整体效果图如图6.2.2为组态王仿真的控制台效果图 图6.2.2 组态王仿真控制台效果图第七章、组态王与单片机结合7.1 STM32单片机串口通信见附录27.2 组态王控制单片机实现见附录27.3 组态王控制远程系统实现见附录2【参考文献】1徐光博,张秀艳.Z3040摇臂钻床电气控制系统设计J.南方农机,2019,50(01):48.2孙福才,杜丽萍.基于PLC实现Z3040摇臂钻床电气控制系统改造J.内燃机与配件,2018(16):77-79.3李利军,岳玉霞.采用PLC改造Z3040型摇臂钻床J.电世界,2016,57(11):36-38.

30、4林宗德.基于Z3040摇臂钻床的PLC控制设计J.机电一体化,2015,21(11):62-65.5饶东强.Z3040摇臂钻床综合改造分析J.机械研究与应用,2014,27(02):159-161.6郑严.Z3040B摇臂钻床的电气控制系统分析J.硅谷,2014,7(08):139+143.7漆汉宏.PLC电气控制与技术J,2016,1.8张永兵,李艳菊.Z3040摇臂钻床的数字监控设计及电气线路改造J.科技传播,2016,5(11):197-198.9石月萍.Z3040摇臂钻床主轴传动系统的改造J.科技信息,2016(14):403-404.10王丽,王雪萍.摇臂钻床Z3040控制系统电路

31、设计J.信息与电脑(理论版),2010(06):151-152.11肖成辉.Z3040摇臂钻床的改造J.今日科苑,2016(08):116.附录一:组态王程序接口与源代码if(本站点开关=1) 本站点Y=20;本站点X=20;本站点松紧状态按钮=0;if(本站点Y-本站点zt=0) 本站点松紧状态按钮=0;if(本站点Y!=本站点zt) 本站点松紧状态按钮=1; 本站点zt=本站点Y;if(本站点Y!=0 &&本站点Y!=100)本站点限位上=1;本站点限位下=1;if(本站点Y=0)本站点限位下=0;if(本站点Y=100)本站点限位上=0;if(本站点X!=0 &&

32、amp;本站点X!=200)本站点限位左=1;本站点限位右=1;if(本站点X=0)本站点限位左=0;if(本站点X=200)本站点限位右=0;if(本站点开关=1)本站点Y=20;本站点X=20;本站点松紧状态按钮=0;if(本站点开关=1)本站点Y=20;本站点X=20;本站点松紧状态按钮=0;if(本站点松紧状态X=0)本站点X=本站点ztX;本站点ztX=本站点X;if(本站点开关=1)本站点Y=0;本站点X=0;本站点松紧状态按钮=0;if(本站点开关=1) 本站点Y=20;本站点X=20;本站点松紧状态按钮=0;附录二:单片机接口及程序源代码#include "sys.h

33、"#include "delay.h"/#include "usart.h" #include "led.h" #include "lcd.h" #include "key.h" /#include "usmart.h" #include "malloc.h"#include "sdio_sdcard.h" #include "w25qxx.h" #include "ff.h" #inc

34、lude "exfuns.h" #include "text.h"#include "rs232.h"#include "24cxx.h" #include "touch.h" #include "remote.h"/*/ void draw_jiantou_left(int position_x,int position_y,float k);void draw_jiantou_right(int position_x,int position_y,float k);voi

35、d draw_jiantou_up(int position_x,int position_y,float k);void draw_jiantou_down(int position_x,int position_y,float k);void control1(int temp1);int temp1=0;int a,b,c,d,f;/上下左右、主电机、限位灯void Load_Drow_Dialog(void)LCD_Clear(WHITE);/清屏 /POINT_COLOR=BLUE;/设置字体为蓝色 /LCD_ShowString(lcddev.width-24,0,200,16,1

36、6,"RST");/显示清屏区域 POINT_COLOR=RED;/设置画笔蓝色/LCD_DrawLine(0,0,320,480);void rtp_test(void)/u8 key;/u8 i=0; /key=KEY_Scan(0);tp_dev.scan(0); if(tp_dev.sta&TP_PRES_DOWN)/触摸屏被按下if(tp_dev.x0>90&&tp_dev.x0<150&&tp_dev.y0<80&&tp_dev.y0>10)/上箭头被按下a=1;POINT_COLO

37、R=RED;draw_jiantou_up(120,10,0.5);delay_ms(100); if(tp_dev.x0>90&&tp_dev.x0<150&&tp_dev.y0<190&&tp_dev.y0>110)/下箭头被按下b=1;POINT_COLOR=RED;draw_jiantou_down(120,200,0.5);delay_ms(100);if(tp_dev.x0>2&&tp_dev.x0<72&&tp_dev.y0<120&&tp_d

38、ev.y0>70)/左箭头被按下c=1;POINT_COLOR=RED;draw_jiantou_left(2,100,0.5);delay_ms(100);if(tp_dev.x0>170&&tp_dev.x0<238&&tp_dev.y0<120&&tp_dev.y0>70)/右箭头被按下d=1;POINT_COLOR=RED;draw_jiantou_right(238,100,0.5);delay_ms(100);if(tp_dev.x0>90&&tp_dev.x0<240&

39、;&tp_dev.y0<290&&tp_dev.y0>200)/OFF被按下a=0;b=0;c=0;d=0;f=0;POINT_COLOR=RED;LCD_Draw_Circle(180,250,50);GPIO_ResetBits(GPIOA,GPIO_Pin_6);GPIO_ResetBits(GPIOF,GPIO_Pin_12);GPIO_ResetBits(GPIOF,GPIO_Pin_13);GPIO_ResetBits(GPIOF,GPIO_Pin_5|GPIO_Pin_0|GPIO_Pin_2|GPIO_Pin_1|GPIO_Pin_3);GP

40、IO_ResetBits(GPIOE,GPIO_Pin_5|GPIO_Pin_0|GPIO_Pin_2|GPIO_Pin_1|GPIO_Pin_6);delay_ms(100);if(tp_dev.x0>2&&tp_dev.x0<100&&tp_dev.y0<290&&tp_dev.y0>200)/ON被按下f=1;POINT_COLOR=RED;LCD_Draw_Circle(55,250,50);delay_ms(100);/else delay_ms(10);/没有按键按下的时候 /if(key=KEY0_PRES)

41、/KEY0按下,则执行校准程序/LCD_Clear(WHITE);/清屏/ TP_Adjust(); /屏幕校准 /Load_Drow_Dialog();/i+;/if(i%20=0)LED0=!LED0;int main(void) /u32 fontcnt; /u8 key;/单片机按键/u8 key1;/红外遥控/u8 i=0; /u8 j=0; /u8 bzw=0;u8 data=0;/u8 bzw1=0;/u8 bzw2=0;/u8 bzw3=0;/u16 table1=0x10,0x12,0x02,0x06,0x04,0x0c,0x08,0x18;/ u16 table2=0x10

42、,0x18,0x08,0x0c,0x04,0x06,0x02,0x12;/u16 table3=0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09;/ u16 table4=0x01,0x09,0x08,0x0c,0x04,0x06,0x02,0x03;delay_init(); /延时函数初始化 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);/设置中断优先级分组为组2:2位抢占优先级,2位响应优先级BJDJ_Init();/电机初始化tp_dev.init();RS232_Init(); LED_Init(); /初

43、始化与LED连接的硬件接口/uart_init(115200); /串口初始化为115200KEY_Init(); Remote_Init();/红外接收初始化LCD_Init(); /初始化LCD W25QXX_Init();/初始化W25Q128 my_mem_init(SRAMIN);/初始化内部内存池exfuns_init();/为fatfs相关变量申请内存 f_mount(fs0,"0:",1); /挂载SD卡 f_mount(fs1,"1:",1); /挂载FLASH.while(font_init(); /检查字库 POINT_COLOR=

44、BLUE; while(1)data=receive_data();while(data=116) data=receive_data(); switch(data)case 7:LED0=1;break;case 8:LED0=0;break;case 9:LED1=0;break;case 10:LED1=1;break;case 11:a=1;break;case 12:b=1;break;case 13:c=1;break;case 14:d=1;break;case 15:f=1;break; LCD_ShowString(52,240,50,16,16,"ON"

45、); LCD_ShowString(172,240,50,16,16,"OFF");LCD_ShowString(52,100,50,16,16,"L"); LCD_ShowString(172,100,50,16,16,"R");LCD_ShowString(112,50,50,16,16,"U"); LCD_ShowString(112,130,50,16,16,"D"); POINT_COLOR=BLACK; LCD_Draw_Circle(55,250,50); LCD_Draw_Cir

46、cle(180,250,50); draw_jiantou_left(2,100,0.5); draw_jiantou_right(238,100,0.5); draw_jiantou_up(120,10,0.5); draw_jiantou_down(120,200,0.5); rtp_test(); control1(temp1); LCD_ShowxNum(120,370,a,4,24,0);/显示conLCD_ShowxNum(120,420,data,4,24,0);/显示data tp_dev.scan(0); if(data&&1=1) void draw_jia

47、ntou_left(int position_x,int position_y,float k)/左箭头int a1=position_x;int a2=position_y;LCD_DrawLine(a1,a2,a1+75*k,a2-100*k);LCD_DrawLine(a1,a2,a1+75*k,a2+100*k);LCD_DrawLine(a1+75*k,a2-100*k,a1+75*k,a2-100*k+50*k);LCD_DrawLine(a1+75*k,a2+100*k,a1+75*k,a2+100*k-50*k);LCD_DrawLine(a1+75*k,a2-100*k+50

48、*k,a1+75*k+100*k,a2-100*k+50*k);LCD_DrawLine(a1+75*k,a2+100*k-50*k,a1+75*k+100*k,a2+100*k-50*k);LCD_DrawLine(a1+75*k+100*k,a2-100*k+50*k,a1+75*k+100*k,a2+100*k-50*k);void draw_jiantou_right(int position_x,int position_y,float k)/右箭头int a1=position_x;int a2=position_y;LCD_DrawLine(a1,a2,a1-75*k,a2-10

49、0*k);LCD_DrawLine(a1,a2,a1-75*k,a2+100*k);LCD_DrawLine(a1-75*k,a2-100*k,a1-75*k,a2-100*k+50*k);LCD_DrawLine(a1-75*k,a2+100*k,a1-75*k,a2+100*k-50*k);LCD_DrawLine(a1-75*k,a2-100*k+50*k,a1-75*k-100*k,a2-100*k+50*k);LCD_DrawLine(a1-75*k,a2+100*k-50*k,a1-75*k-100*k,a2+100*k-50*k);LCD_DrawLine(a1-75*k-100

50、*k,a2-100*k+50*k,a1-75*k-100*k,a2+100*k-50*k);void draw_jiantou_up(int position_x,int position_y,float k)/上箭头int a1=position_y;int a2=position_x;LCD_DrawLine(a2,a1,a2-100*k,a1+75*k);LCD_DrawLine(a2,a1,a2+100*k,a1+75*k);LCD_DrawLine(a2-100*k,a1+75*k,a2-100*k+50*k,a1+75*k);LCD_DrawLine(a2+100*k,a1+75*

51、k,a2+100*k-50*k,a1+75*k);LCD_DrawLine(a2-100*k+50*k,a1+75*k,a2-100*k+50*k,a1+75*k+100*k);LCD_DrawLine(a2+100*k-50*k,a1+75*k,a2+100*k-50*k,a1+75*k+100*k);LCD_DrawLine(a2-100*k+50*k,a1+75*k+100*k,a2+100*k-50*k,a1+75*k+100*k);void draw_jiantou_down(int position_x,int position_y,float k)/下箭头int a1=posit

52、ion_y;int a2=position_x;LCD_DrawLine(a2,a1,a2-100*k,a1-75*k);LCD_DrawLine(a2,a1,a2+100*k,a1-75*k);LCD_DrawLine(a2-100*k,a1-75*k,a2-100*k+50*k,a1-75*k);LCD_DrawLine(a2+100*k,a1-75*k,a2+100*k-50*k,a1-75*k);LCD_DrawLine(a2-100*k+50*k,a1-75*k,a2-100*k+50*k,a1-75*k-100*k);LCD_DrawLine(a2+100*k-50*k,a1-75*k,a2+100*k-50*k,a1-75*k-100*k);LCD_DrawLine(a2-100*k+50*k,a1-75*

温馨提示

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

评论

0/150

提交评论