熟悉LabVIEW开发环境,掌握基于 LabVIEW的虚拟仪器原理、 设计方法和实现技巧,运用专业中的基本理论和实践知识,采用 LabVIEW开发工具,实现LabVIEW 实现闹钟程序的设计和仿真。此次设计是基于 LabVIEW 的软件仿真设计,仿真一个闹钟使它具有定点报时的功能, 硬件需求是一台安装该软件的电脑,软件设计需要实现它的所有功能包括以下:

1.可以显示系统时间,通过和系统连接获得。

2.可以显示闹钟定时的时间,该时间可以手动设置,定时后的时间可以修改,整点报时。

3.当设定时间和系统时间相等时,触发闹铃铃声,还可以手动停止闹铃或者自动停止。

二、总体框图

170.001.jpg ()

2020-12-9 11:41 上传

图1 总体设计框图

三、设计思路

利用虚拟仪器技术LabVIEW设计的闹钟,可以用来模拟真实闹钟而进行工作。使用虚拟仪器技术,工程师可以利用图形化开发软件LabVIEW方便、高效的创建自定义的解决方案,以满足灵活多变的需求趋势。该设计的闹钟是利用虚拟仪器LabVIEW技术而完成的,通过获取系统时间,使LabVIEW前面板显示时钟,并实时更新。其中,时钟、月、日、小时、分钟、秒。另外,前面板上有模拟的时钟面板,其中有3个不同颜色的指针,分别为时针、分针和秒针。还有定时功能,可以设置定时时间和定时播放的铃音。

3.1总体设计思路

通过获取电脑的系统时间,并分离出数字,再通过脑中的指针实时显示和更新;通过预设时间和铃声,可以实现闹钟的定时功能。闹钟从电脑系统获取时间,然后时间和日期通过字符串数字显示,其中时间通过量表面板显示。通过设置定时时间和量表时间比较来决定闹钟提醒时间。具体的闹钟铃声有预设的铃声决定。

3.2总体结构层次

主VI调用相应的其他子VI,进行相应的运算,最后把结果显示在页面上。VI的层次结构如图2所示,其中的VI主要有:定时VI,时间VI,播放声音VI,时钟全局变量VI和主VI。

170.002.jpg ()

2020-12-9 11:41 上传

图2  VI层次结构

四、设计和实现

主要功能分子VI实现,方便程序的编写、调试和调用。

4.1模块化的设计和实现

4.1.1.量表时间的实现的VI

获取系统24进制时间转换成量表12进制时间,并转换成与定时时间比较的实时时间。表时间的程序如图3所示。

170.003.jpg ()

2020-12-9 11:41 上传

图3 量表时间

4.1.2预设时间VI

把预设定时时间24进制的转换成12进制的时间,和预设的铃声音乐一起送至时间全局变量。另外设置定时时间恢复默认值。定时时间或预设时间如图4所示。

170.004.jpg ()

2020-12-9 11:41 上传

图4 预设时间

4.1.3声音的读取子VI

声音的读取模块如图5所示。由确认按钮确认闹钟的定时铃声的响起和停止,而具体的铃声由路径提供铃声文件的位置所决定。

170.005.jpg ()

2020-12-9 11:41 上传

图5声音的读取

4.1.4主界面

闹钟主界面由图6所示,主界面主VI控制着整个程序的逻辑结构和运算过程。主要是对用户界面上的操作输入和运行结果的显示,其中,从主界面程序框图如图7所示,主VI通过调用相关的子VI来完成相关的操作。

170.006.jpg ()

2020-12-9 11:41 上传

图6 主界面

170.007.jpg ()

2020-12-9 11:41 上传

图7 系统主框图

4.2.关键技术

运用LabVIEW设计闹钟,有独特的技术特色。

4.2.1模块化编程

模块化编程方便于调试,修改和调用。一个模块都可以作为一个子模块被 其他模块调用,即主VI调用子VI,任何一个VI都可以设置成子VI或主VI被其他的VI调用。

4.2.2全局变量

全局变量如图8所示,它用于在多个VI直接访问和传递数据,非常便于不同程序间的数据传输。

把定时设置成全局变量,一是方便预设时间子VI,另一方面方便与预设时间数据传输给下一个子VI。也就是说,时间全局变量既可以作为输出数据接收数据,接收到数据后又可以设置成输入变量,把数据传输给下一个子VI。

170.008.jpg ()

2020-12-9 11:41 上传

图8 全局变量

4.2.3量表的设计

如图9所示,从LabVIEW元件库调出来的量表本来只有一个时针,通过添加十帧属性,添加到3个指针分别代表时、分、秒。但量表的输入要通过输出簇才能输入数据。

170.009.jpg ()

2020-12-9 11:41 上传

图9 量表的设计

4.3程序调试

本闹钟的定时铃声格式要wav格式的文件,若是别的格式定时前要转换成wav格式,又由于主程序分成很多子VI,所以程序的编写,调试调用和增加功能都特别方便。

4.4结束语

该闹钟的功能拓展非常方便。闹钟钟功能很简单,实现起来也很简单,但要做得美观、简洁却不那么容易。 比如让其显示更多生动的字体,              在一个小窗口里实现更多的动画。但这个闹钟的缺陷是只能在计算机上运行,无法在一般的手机或别的设备上运行,且闹铃声只能来源于wav格式的文件。

五、运行结果

5.1 点击运行按键。从系统获取时间。

170.010.jpg ()

2020-12-9 11:41 上传

图10 时间获取

5.2 点击定时按钮,手动定时设置。选择铃声路径。

170.011.jpg ()

2020-12-9 11:41 上传

图11 定时设置

5.3 点击定时完成,闹钟设置完毕。

5.4 闹钟响起。

2020-12-9 11:46 上传

点击文件名下载附件

定时时钟VI程序.zip

(497.5 KB, 售价: 2 工控币)

2020-12-9 11:46 上传

点击文件名下载附件

售价: 2 工控币

[购买]

1.png ()

2020-12-9 11:48 上传

android闹钟详细设计,基于LabVIEW的闹钟设计 详细文档+程序相关推荐

  1. 华为19级专家10年心血终成百页负载均衡高并发网关设计实战文档

    负载均衡(LoadBalance)的字面意思是将工作负载分担到多个工作单元上进行执行,它建立在现有网络结构之上,是构建分布式服务.大型网络应用的关键组件. 近十几年来,负载均衡技术层出不穷,令人眼花缭 ...

  2. 华为19级大佬10年心血终成百页负载均衡高并发网关设计实战文档

    说在前面的话 负载均衡(LoadBalance)的字面意思是将工作负载分担到多个工作单元上进行执行,它建立在现有网络结构之上,是构建分布式服务.大型网络应用的关键组件. 近十几年来,负载均衡技术层出不 ...

  3. 互联网产品设计常用文档类型-BRD、MRD、PRD、FSD

    互联网产品设计常用文档类型-BRD.MRD.PRD.FSD 摘自:互联网产品设计常用文档类型-BRD.MRD.PRD.FSD 2017-03-16 1 BRD Business Requirement ...

  4. promethues+alertmanager+grafana监控docker容器和报警—基于手动配置和文件自动发现—详细文档

    promethues+alertmanager+grafana监控docker容器和报警-基于手动配置和文件自动发现-详细文档 相关配套软件包网盘下载链接如下: 网盘地址: https://url28 ...

  5. android在线预览excel文件格式,Android打开doc、xlsx、ppt等office文档解决方案

    原标题:Android打开doc.xlsx.ppt等office文档解决方案 1.Android端有什么控件可以直接显示office文档吗? 很抱歉没有,对于ios而言想要显示office文档,直接调 ...

  6. 太牛了!我把阿里、腾讯、字节跳动、美团等Android性能优化实战整合成了一个PDF文档

    安卓开发大军浩浩荡荡,经过近十年的发展,Android技术优化日异月新,如今Android 11.0 已经发布,Android系统性能也已经非常流畅,可以在体验上完全媲美iOS. 但是,到了各大厂商手 ...

  7. Android应用内打开.docx/.pdf/.xlsx/.txt等文档——腾讯TBS

                                   Android应用内打开.docx/.pdf/.xlsx/.txt等文档-腾讯TBS 1.功能借鉴:https://blog.csdn.n ...

  8. 基于C++的OpenCV项目实战——文档照片转换成扫描文件

    基于C++的OpenCV项目实战--文档照片转换成扫描文件 一.背景 前段时间都是基于Python的OpecCV进行一些学习和实践,但小的知识点并没有应用到实际的项目中:并且基于Python的版本的移 ...

  9. 基于LABVIEW和热电偶设计一个温度测量系统

    ** **整个温度测量系统的设计为两个部分,一在LABVIEW2018上编程出温度测量系统,二在NI-DAQ上进行数据采集,把采集到的数据通过串口输入到LABVIEW的子面板程序中,输出得到波形,完成 ...

最新文章

  1. 【Pytorch】运用英伟达DALI加速技巧可使PyTorch运算速度快4倍
  2. 女性走夜路不安全?英国奇葩新招:无人机护航,关键时刻用光吓退张三
  3. php框架where条件使用,where条件
  4. UA MATH523A 实分析3 积分理论例题 控制收敛定理计算一元积分的极限
  5. 简单理解mysql事务_如何理解数据库事务中的一致性的概念?
  6. ARP***原理及解决方法与CMD命令分类(1)
  7. 《圣殿祭司的ASP.NET4.0专家技术手册》----导读
  8. iOS UIPickerView
  9. [UWP开发]NavigationView基础使用方法
  10. linux-LINUX试题
  11. 【路径规划】基于matlab帝国企鹅算法求解机器人栅格地图避障路径规划问题【含Matlab源码 784期】
  12. 反射--获取构造器,获取父类,获取带泛型的父类,获取实现的接口,获取所在的包,获取注解
  13. STM32蜂鸣器驱动程序
  14. 2006设计师必备网址全集
  15. 《系统集成项目管理》第七章 项目范围管理
  16. 家庭宽带搭建ipv6私人网盘
  17. Kali使用Aircrack-ng进行暴力破解WIFI密码
  18. 这篇博士毕业论文致谢句句诛心……
  19. 解决路由环路问题的方法
  20. VMware的下载安装

热门文章

  1. C# WINFORM的自动更新程序
  2. TCP/UDP网络编程入门教程之二:TCP Server端——socket与文件描述符
  3. IOS开发之UI基础LOL英雄展示-15
  4. 华为融合电信云解决方案包括_运营商这“一朵云”怎么建?使能者华为的解决之道...
  5. python和rpa有什么关系_什么是RPA_什么是RPA_产品简介_机器人流程自动化RPA - 阿里云...
  6. python多线程返回值_python获取多线程及子线程的返回值
  7. Log4j2解决方案与复现略图
  8. 嵌入式C语言编程课件,嵌入式系统C语言编程基础PPT课件
  9. python约瑟夫环单向循环链表_约瑟夫环的单向循环链表的实现代码
  10. Recyclerview删除数据后无法加载下一页数据(或者是漏了一条数据)