基于USB单片机的模拟电梯设计与实现
的命令,如“电梯上升到某层”、“电梯下降到某层”、“电梯停止运行”等。该模块轮询上位机用户命令,并且查询设备状态及用户命令优先级,在满足该命令执行的条件后执行该命令,并将运行状态及结果反馈给上位机,或者将错误信息反馈给上位机。
系统监控模块属于系统资源管理模块的范畴,包括看门狗的复位,定时器的复位,模拟电梯系统运行状态的更新等。
电梯调度算法是本系统的核心。由于核心目的是实现电梯的调度,该算法只考虑电梯主体功能,忽略超重检测、防夹检测、用户权限识别等功能,但是在固件中预留该功能的调用,以便日后完善。调度算法兼顾公平性和电梯的运行效率,要求电梯遵循时间优先、顺向优先和最远反向截梯控制原则。
3 上位机应用软件设计
上位机采用VS2010为开发工具,C++为开发语言,采用了面向对象的编程方式进行编程。为了进一步简化编程和提高编程效率,没有采用直接调用Windows API的模式进行代码调用而是采用了MFC(Microsoft Foundation Classes)库进行编程。MFC是一个微软公司提供的类库,以C++类的形式封装了Windows API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。MFC的主要优点是可以用面向对象的方法来调用Windows API,以及应用程序开发的便捷。
上位机模块的主要功能是模拟真实电梯轿厢内、外的按键,用户点击相应楼层按钮后,下位机解析用户命令并通过电梯的正、反转转动及液晶显示屏等来显示用户命令执行情况,同时将状态及结果等反馈到上位机中。上位机的软件运行界面如图6所示。
4 结论
本文设计了一种实用的电梯模拟系统,该系统采用CY7C680013A作为主控制器,外扩液晶显示模块、步进电机和蜂鸣器,可以模拟电梯的各种状态,下位机软件实现了电梯硬件资源的控制及调度。上位机采用VC2010开发,显示电梯楼层按键、电梯运行状态、系统诊断信息等。本系统可以实现大部分电梯的功能,便于初学者掌握电梯的相关知识,通过学生的动手实践,提高其软件编制能力和故障诊断能力,为其将来的发展打坚实基础。
模拟电梯 CY7C680013A 调度算法 故障诊断 在线调试 相关文章:
- 基于人工免疫算法的变压器故障诊断方法(11-11)
- 基于人工智能和现代信息信号处理的模拟电路故障诊断(02-28)
- 容差模拟电路软故障诊断的小波与量子神经网络方法(04-17)
- 仪器仪表电路十大故障诊断方法(03-22)
- GEP在变压器故障诊断中的应用(03-17)
- SignalTapII ELA的FPGA在线调试技术(05-28)