




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章绪论近年来,道路与桥梁的建设和维护一直是重要的公共基础设施建设领域,随着人工智能技术的快速发展,AI医生系统逐渐在该领域得到应用。AI医生系统是指利用人工智能技术来分析和处理桥梁健康状况的系统,其目的是提高桥梁的安全性和可靠性,降低维护成本。道路和桥梁的建设与维护是一个长期而复杂的过程,涉及到多个领域和因素。一方面,长期以来,许多国家和地区的经济发展都离不开道路和桥梁的建设,其对国家和社会的贡献是不可忽视的。另一方面,由于自然环境和人类活动的影响,道路和桥梁的状况随时可能发生变化,如龟裂、变形、锈蚀等问题。这些问题不仅会降低道路和桥梁的安全性和可靠性,还会增加维护成本和安全风险。在传统的桥梁维护领域,主要是通过人工巡检来发现和解决问题。然而,这种方式效率低下,费用高昂,无法满足大规模道路和桥梁的实时监测需求。随着人工智能技术的逐渐成熟,AI医生系统作为一种新型桥梁健康监测技术逐渐被应用到实际生产和实际工程中。该系统主要是利用机器学习、深度学习等人工智能技术,对桥梁进行智能监测,预测桥梁的健康状况,从而提高道路和桥梁的安全性和可靠性,降低维护成本。因此,为了更好地应对道路与桥梁的健康监测要求,建立AI医生系统具有非常重要的实际意义以及发展的价值。AI医生系统可以自动化地识别和分析道路和桥梁的缺陷、病变和破坏,预测维护所需时间和成本,提高维护的效率和准确性,为桥梁的建设和维护提供更加科学、智能的技术支持。总之,AI医生系统在道路和桥梁建设领域的应用,不仅可以提高道路和桥梁的安全性和可靠性,还可以为公共基础设施建设领域的发展带来更多的机遇和挑战。随着AI技术的不断发展和完善,AI医生系统也将会得到不断的改进和升级,从而更好地适应实际应用场景的需求。
第2章现状分析随着人们对重要桥梁安全性、耐久性与正常使用功能的日渐关注,桥梁健康监测的研究与监测系统的开发应运而生。孙弋、孙媛媛、孙柒零和卢皓等人于2022年发布的《基于ZigBee的便携式无线桥梁健康状况监测技术的研究》一文中提出尽管我国已经开始关注大型桥梁建筑的健康状况并将一些研究成果应用于实际当中,但是我国对桥梁健康状况的检测起步较晚,起点较低,在传感器性能、芯片设计、智能通信与控制、海量数据处理等核心技术上与发达国家还存在较大的差距。因此,如何保障在役桥梁的安全运营仍是一个值得深入研究的课题。我国在役桥梁的安全养护主要是依据《公路养护技术规范》,但是仅根据此规范已不能满足现代大型桥梁安全检测的要求。根据我国现有条件,采用何种手段对桥梁进行安全检测,检测哪些内容,以及如何根据检测结果对桥梁运营安全进行准确评估都成为急待解决的问题。在我国现有桥梁安全检测的手段口中,传统检测方式是使用人工方法进行数据测量、记录以及判断,这种方法在数据处理过程中容易引入人为误差,而且采集数据耗时较长。很难保证每次进行数据采集时技术人员的工作状态一致。另外,采用人工测量数据的方法工作量大,成本高,耗时长。较先进的桥梁检测方式是使用光缆将计算机与采集设备和检测设备连接,但使用光缆的成本较高,维护较难,且检测设备不可移动。现有的更为常见的检测系统使用GSM或CDMA网络连接到Internet,再通过路由器连接至检测设备,该方法实现比较复杂,而且远距离无线发射设备功率很大,难以完成对桥梁健康状况的长期检测。近几年来,伴随着我国经济技术的飞速发展,桥梁荷载试验技术已经向着测试仪器高精度、测试手段多样化、器件小型化和智能化方向发展。随着计算机等现代化设备越来越广泛的使用,各种测试仪器的自动化水平也逐步提高。除传统的人工检测方法外结构动力和结构静力实验也成为常用的桥梁结构检测方法。2021年赵文秀在《桥梁检测技术综述》中指出动静载试验方法在实际应用中有其固有的优势,比如该实验主要是以挠度校验系数和关键部位的应力为基准进行桥梁状况的评价,评定方法简单实用。但是传统的动静载试验方法在应用的过程中也存在着一些不足,比如试验时间较长、费用较高、需要较长时间中断交通、使用更多人力等。并目测试数据是离散的单点数据,导致其测试可靠性和准确性不易得到保证。智能感知技术是《国家中长期科技发展规划纲要》中提出的需要优先发展的前沿技术之一,智能感知的前沿技术主要表现在三个研究领域之中,包括:人类认知能力研究。压电传感技术及无线传感网络技术。特别是无线传感网络技术是近几年国际智能感知领域中的最新的热点领域。2021年8月7日温家宝总理在无锡视察时,提出在无锡加快建立“感知中国”中心的指示。利用智能感知技术可以对桥梁健康状况进行精确的测试,并将测试数据进行无线发送,该技术对解决现有桥梁健康检测系统中存在的问题提供良好的解决方案。2018年,MS.BeckandA.在《PIaskowski,CrossCorreIationFIowmeters—TheirDesignandAppcation》指出近年来以美国为首的西方国家开始研制基于集成化系统的桥梁测试评价体系,取得了大量成果。2010年,欧美发达国家的各级政府及所属科研机构投入大量的资金用于支持桥梁功能退化状况和使用风险定量评估方法和技术的研究,研究成果表明,适时的维修加固对延长桥梁使用寿命十分关键。2017年,KwangsooKim;Dong-HwanPark;HyochanBang等专家在《GeonsooHong;Seong-ilJin.Smartcoffeevendingmachineusingsensorandactuatornetworks》提出随着欧美各国在现代通讯技术、传感器技术以及信号分析处理技术等方面的快速发展,大型桥梁的结构健康状况检测上评估已成为建筑工程关注的热点,新型桥梁都安装了先进的结构健康检测系统。其中一些新的检测技术,包括无线远程数据传输、神经网络、数字图像处理技术、光纤应变传感器等在桥梁检测中的应用取得了重大突破。这些新技术的研究与应用使得桥梁无损检测技术变为可能,无损检测技术也开始向着系统化、智能化、快速化的方向发展。综上所述,国内外对于智能化桥梁状况检测方式的研究仍处在发展阶段,大部分还是传统的人工检测方式,没有很好的将物联网技术、计算机技术等智能化技术与其结合起来,本设计利用AI图像学习识别技术以及ZigBee技术设计的道桥的AI系统能够实现桥梁检测的智能化。AI模块学习表观危害,摄像头采集信息,当采集的信息出现异常时发送警示信号至上位机,上位机收到信号后进行弹窗示警,提醒管理员及时进行处理。
设计需求分析3.1需求分析综述AI医生系统是利用人工智能技术实现桥梁健康监测的系统,其设计需要充分考虑用户需求和技术限制。本文将从用户需求进行需求分析,以便更好地设计出高效、可靠的AI医生系统。1.实时监测AI医生系统应能够对道路和桥梁进行实时监测,以及对当前出现的问题进行报警和处理。系统应能够根据实时数据进行分析和判断,以随时确保道路和桥梁的安全性和可靠性。2.数据收集和管理AI医生系统需要对道路和桥梁的数据进行收集和管理。这些数据应包括桥梁的历史记录、结构参数、材料状况等信息,以及实时监测所得的数据。系统应具备强大的数据管理能力,以及数据可视化和分析等功能。3.故障识别与示警AI医生系统应能够进行故障识别与示警,包括对桥梁缺陷、病变和破坏等问题进行分析和判断,以及根据结果进行对上位机的示警。系统应具备强大的故障诊断能力,能够自行判断出桥梁出现的问题,以便更好地保障道路和桥梁的安全性和可靠性。4.用户友好性AI医生系统应具备良好的用户友好性,包括简洁明了的操作界面、易于理解的提示信息和说明,以及方便的用户反馈和沟通渠道等。系统应能够满足用户的操作和管理需求,提高用户的使用体验和满意度。3.2系统特点分析设备端(下位机):此部分主要是实现对桥梁健康状态的自动监测,通过AI模块学习桥梁表观危害,通过摄像头采集图像,利用ZigBee模块实现下位机与上位机通信,下位机将检测到的数据发送至上位机;当采集到的图像出现异常,发送警示信号至上位机,并且要能够采集桥梁的震动频率,当桥梁的震动频率超过设置的震动阈值时,将向上位机发送示警信号。电脑端(上位机):此部分主要是实现管理员进行远程监控桥梁健康状况,当接收到下位机发送的示警信号,上位机将进行弹窗示警实时提醒管理员去处理问题。
第4章系统总体结构4.1设计方案本设计是一款道桥的AI医生系统设计。针对检测桥梁健康的问题做研究。利用电脑作为上位端,ZigBee进行通信。上位机接收下位机传来的信息并显示;可设定震动频率异常阈值;接收到警告信号时进行提醒,提醒管理员前往查看维护。下位机系统可实时显示摄像头采集画面、学习桥梁表观危害,可识别到桥梁表观发生诸多裂缝之类的危害,蜂鸣器示警,发送警告信号到上位机;下位机还可检测桥梁震动频率并显示,发送至上位机;当检测到桥梁的震动异常时,蜂鸣器示警,并发送警告信号到上位机。4.2功能需求分析4.2.1技术路线(1)硬件部分需要K210开发板;(2)软件平台程序用python;(3)画原理图用AD;(4)编程语言用C语言;(5)用户信息显示查看;4.2.2预期结果作品展示,完成一个道桥的AI医生系统设计,并且该设计能实现的功能如下:ZigBee通信,电脑端上位机上位机:1.接收下位机发来的信号,并显示;2.设定震动频率异常阈值;3.接收到警告信号,弹窗提醒,提醒管理员前往查看维护;下位机:1.系统可实时显示摄像头采集的画面;2.系统可学习桥梁表观病害;3.系统识别到桥梁表观发生诸如裂缝之类的病害,蜂鸣器示警,实时发送示警信号至上位机;4.系统通过检测桥梁的震动频率,并进行显示,动态发送至上位机;5.系统监测到桥梁的震动异常后蜂鸣器进行示警,并向上位机发送警告信号。4.3总体方案设计第一:在准备理论知识阶段中,通过仔细研究课题的内容,熟练掌握设计课题,能够做到熟练掌握有关题目相关知识;第二:明确系统间各个模块,理清各模块间的关系,并收集有关各个模块的软硬件资料,进行整理和总结;第三:决定研究方向,明确设计的总体结构,勾勒出系统基础框架并在结构框架的基础之上提出原理框图;第四:利用软件完成硬件电路部分设计并画出系统各部分的电路图,将系统部件通过接口电路集合在一起,并画出总体的电路图;第五:根据系统控制流程完成软件设计部分,画出主要流程图;第六:进行仿真模拟,检测系统是否依据规定实现控制功能,整理论文。4.4开发板型号选择图4-1K210芯片原理图K210是一家从前做挖矿芯片的公司名为嘉楠所制作的一款MCU,其特点是芯片架构中含有一个自创的神经网络硬件加速器KPU,可以高效地进行卷积神经网络计算。特别注意的是,芯片的算力不一定和模型推理速度成正比,嵌入式AI的另一个核心是inference框架。对于CPU架构来说,是否使用SIMD(ARM从v7开始就支持NEON指令了)、是否使用多核多线程、是否有高效的卷积实现方式、是否有做汇编优化等等都会极大影响模型运行速度;而对DSP/NPU等硬件架构来说,是否对模型进行量化推理、量化的方式、访存的优化等也会有很大影响。K210的其他参数如下:双核64-bitRISC-VRV64IMAFDC(RV64GC)CPU/400MHz(可超频到600MHz)双精度FPU8MiB64bit片上SRAM(6MiB通用SRAM+2MiB的AI专用SRAM)神经网络处理器(KPU)/0.8TFLOPS音频处理器(APU)可编程IO阵列(FPIOA)双硬件512点16位复数FFTSPI,I2C,UART,I2S,RTC,PWM,定时器支持AES,SHA256加速器直接内存存取控制器(DMAC)
第5章系统的硬件部分设计5.1系统总体设计本设计是一款道桥的AI医生系统设计。针对检测桥梁健康的问题做研究。利用电脑作为上位端,ZigBee进行通信。上位机接收下位机传来的信息并显示;可设定震动频率异常阈值;接收到警告信号时弹窗提醒,提醒管理员前往查看维护。下位机系统可实时显示摄像头采集画面、学习桥梁表观危害,可识别到桥梁表观发生诸多裂缝之类的危害,蜂鸣器示警,发送警告信号到上机位;下位机还可检测桥梁震动频率并显示,发送至上机位;当检测到桥梁的震动异常时,蜂鸣器示警,并发送警告信号到上机位。该系统应完成的主要功能有:ZigBee通信,电脑端上位机上位机:1.接收下位机发来的信号,并显示;2.设定震动频率异常阈值;3.接收到警告信号,弹窗提醒,提醒管理员前往查看维护;下位机:1.系统可实时显示摄像头采集的画面;2.系统可学习桥梁表观病害;3.系统识别到桥梁表观发生诸如裂缝之类的病害,蜂鸣器示警,发送警示信号到上位机;4.系统可检测桥梁的震动频率,显示,并发送上位机;5.系统监测到桥梁的震动异常,蜂鸣器示警,并发送警告信号到上位机。总体原理图如下所示:本设计的主要功能分为五个模块:分别是AI模块,ZigBee模块,显示模块,震动模块和报警模块,这五个模块支撑了设计的运行5.2系统的主要功能模块设计5.2.1AI模块设计图5-1AI模块原理图本设计是K210模块。K210全称是堪智K210,是嘉楠科技自创的一款使用RISC-V处理器架构,拥有视听一体、自主IP内核、编程能力强三大特点,支持机器视觉与听觉多规模识别,可广泛应用于智能家居、智能园区和智能能耗等场景。堪智K210利用台积电低功耗的28纳米先进制程,具备双核64位处理器,总算力高达1TOPS,内置多种硬件加速单元(KPU、FPU、FFT等),具有理想的功耗性能、稳定性与可靠性。K210功耗仅为0.3w,而传统设备工耗为1W,算力为1TOPS(比树莓派、JetsonNano要高),但是1TOPS≠1TFlops。TOPS,(TeraOperationsPerSecond),1TOPS代表处理器每秒钟可以进行一万亿次(10^12)操作。TFlops/s,(TeraFloatingPointOperationsPerSecond),可以简单写为T/s,它是衡量一个电脑计算能力的标准。5.2.2ZigBee模块设计图5-2ZigBee模块原理图Zigbee是基于IEEE802.15.4标准的低功耗个域网协议。根据这个协议规定的技术是一种短距离、低功耗的无线通信技术。这一名称来源于蜜蜂的八字舞,蜜蜂(bee)是依靠飞翔和“嗡嗡”(zig)地扇动翅膀的“舞蹈”来与同伴分享花粉所在方位信息,也就是说蜜蜂通过这样的方式构成了群体中的通信网络。其特点是近距离、低复杂度、低功耗、高数据速率。主要适合用于自动控制和远程控制领域,可以嵌入各种设备。总而言之,ZigBee就是一种便宜的,低功耗的短距离无线组网络通讯技术。ZigBee是一个由可多到65000个无线数传模块构成的一个无线数传网络平台,与现有的移动通信的CDMA网或GSM网十分相似,每一个ZigBee网络数传模块类似移动网络的一个基站,在整个网络范围内,它们之间可以进行相互通信;每个网络节点间的距离可以从标准的75米,到扩展后的几百米,甚至几公里;另外整个ZigBee网络还可以与现有的其它的各种网络连接。例如,你可以通过互联网在长春监控河北某地的一个ZigBee控制网络。ZigBee网络主要是为自动化控制数据传输而建立,而移动通信网主要是为语音通信而建立;每个移动基站价值基本都在百万元人民币以上,而每个ZigBee“基站”却不到一千元人民币,相比移动基站,ZigBee更加节省经费;每个ZigBee网络节点不仅自身能够作为监控的对象,例如传感器连接直接进行对数据的采集和监控,它还可以自动中转别的网络节点传过来的数据资料;除此之外,每一个ZigBee网络节点(FFD)还可在自己信号覆盖的范围内,和多个不承担网络信息中转任务的孤立的子节点(RFD)无线连接。ZigBee技术是一种近距离、低复杂度、低功耗、低速率、低成本的双向无线通讯技术。主要用于距离短、功耗低且传输速率不高的各种电子设备之间进行数据传输以及典型的有周期性数据、间歇性数据和低反应时间数据传输的应用。5.2.3显示模块设计本设计采用LCD1602液晶显示屏来显示桥梁的相关数据。液晶显示模块已作为大部分电子产品的通过器件,如在计算器、万用表、电子表及很多家用电子产品中都可以看到,显示的主要是数字、专用符号和图形。在单片机的人机交流界面中,通常输出方式有以下几种:发光管、LED数码管、液晶显示器。发光管和LED数码管比较常用,软硬件都比较简单,在前面章节已经介绍过,在此不作介绍,本章重点介绍字符型液晶显示器的运用。在单片机系统中使用晶液显示器作为输出器件有如下几个优点:1.显示质量高由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管显示器(CRT)那样需要不断刷新新亮点。因此,液晶显示器画质高且不会闪烁,更加便于人们的观察。2.数字式接口液晶显示器都是数字式的,和单片机系统的接口更加方便可靠,不存在数模转换,数模转换过程中的信号衰减不需要进行时钟频率,向量的调整价格更加便宜,相对的减少了相应的元件和电路,操作更加容易。3.体积小、重量轻液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,在重量上比相同显示面积的传统显示器要轻得多,减少了设备的重量,方便进行下位机的布设,降低了运输的损耗。4.功耗低相对来讲,液晶显示器的功耗大部分消耗在其内部的电极和驱动IC上,因此耗电量比其它显示器要少得多。图5-3显示模块原理图液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑、数字摄像机、PDA移动通信工具等众多领域。5.2.4震动传感器模块设计图5-4震动传感器模块原理图本设计利用震动传感器来检测桥梁震动情况。传感器原理:没有震动时,震动轴静止,导针A和导针B处于导通状态,平时任何角度开关都是接通状态,受到振动或移动时,震动轴会产生移动或振动,从而导致导针A和B会出现断开。这种开关的特点是平时一般处于导通状态耐振动时会短暂断开,所以它的灵敏度很高,同时没有震动时电路导通,所以他是常闭式震动传感器。传感器参数1.采用LM393比较器输出,信号干净,波形好,驱动能力强2.工作电压3.3V~5V3.输出形式:输出数字量开关0和14.尺寸3.2cmx1.4cm5.产品用途:各种震动触发作用,比如防盗报警等6.产品不震动时开关闭合输出低电平,震动时输出高电平;5.2.5蜂鸣器报警电路设计图5-5蜂鸣器电路蜂鸣器是一种小功率的发声元件,采用直流电压供电,被广泛应用于各种各样的无线产品中作发声器件。蜂鸣器主要分类有压电式蜂鸣器、电磁式蜂鸣器,各个又有有源和无源之分。压电式蜂鸣器是由多谐振荡器,压电蜂鸣片和阻抗匹配器等零件组成的,当接通电源后,多谐振荡器起振,会持续的输出100~500HZ的音频信号,此时阻抗匹配器就会推动压电蜂鸣片进行发声,而本设计采用的是电磁式蜂鸣器,电磁式蜂鸣器的工作原理是电磁感应原理,即通电导体周围会有磁场产生,用一个固定的永久磁铁与通电导体产生磁力推动固定在线圈上的鼓膜。蜂鸣器的工作电流一般较大,而单片机的I/0口输出的电流较小,所以单片机不能直接驱动,本文中采用由三极管构成的放大电路来驱动蜂鸣器发音,选用的三极管型号是PNP三极管C9012,而且本设计选用的蜂鸣器属于有源蜂鸣器。
第6章系统的软件设计6.1软件主流程图当全部系统软件通电时,上位机接收下位机传来的信息并显示;可设定震动频率异常阈值;接收到警告信号时弹窗提醒,提醒管理员前往查看维护。下位机系统可实时显示摄像头采集画面、学习桥梁表观危害,可识别到桥梁表观发生诸多裂缝之类的危害,蜂鸣器示警,发送警告信号到上机位;下位机还可检测桥梁震动频率并显示,发送至上机位;当检测到桥梁的震动异常时,蜂鸣器示警,并发送警告信号到上机位。图6-1主流程图
6.2AI模块软件的设计如图4-2为该模块的设计流程图。接通电源后,系统学习桥梁表观病害,学习后识别桥梁表观发生的病害,当摄像头识别到相关的桥梁表观病害后,蜂鸣器进行示警并发送警告信号到上位机;可检测桥梁的震动情况,收集桥梁的震动次数,当检测到桥梁的震动频率高于系统设置的震动阈值时,下位机控制蜂鸣器进行报警,同时发送警告信号到上机位提醒工作人员进行检查。图6-2AI模块设计流程图6.3ZigBee模块的软件设计ZigBee无线通信技术和蓝牙无线通信技术相类似,都是短距离无线通信技术,但是蓝牙无线通信技术存在许多的缺陷,如功耗大,复杂度高,通信距离短等,只适合家庭、个人使用。ZigBee技术的开发是为了满足工业自动化的要求,布局简单,抗干扰,传输可靠,使用方便,所需成本低,通信距离从蓝牙的10米开发到现在空旷距离达数百米,室内能达到50米左右。无线串口模块为串口转2.4G无线模块,可以通过无线将两个或者多个串口连接起来。串口发入模块的数据会被模块使用无线的方式发出,收到无线数据的模块会将这个数据使用串口发出,在两个设备上使用模块,将两个设备的串口连接起来。微控制器与外设之间的数据通信,根据连线结构和传送方式的不同,可以分为两种:并行通信和串行通信。并行通信:指数据的各位同时发送或接收,每个数据位使用单独的一条导线。传输速度快、效率高,但需要的数据线相对较多,成本更高。串行通信:指数据一位接一位地顺序发送或接收。需要的数据线少,成本低,但传输速度慢,效率低。图6-3ZigBee模块流程图6.4显示模块的软件设计在本设计中需要系统信息。系统使用LCD液晶显示数据单片机初始化完成后显示屏会自动写控制字,控制字为单片机中获得的数据,随后显示出来,实时向工作人员报告采集到的数据信息。如图为显示模块流程图。图6-4显示模块流程图
第7章系统测试7.1系统实物图图7-1系统完整实物图7.2测试原理图7-2按键如图7-2为按键模块,依次为复位按键、学习按键和系统按键。按键2是阈值增加,按键3是阈值减少。复位按键按下,清空之前所学习的内容,此时按下系统按键让设备运行,是无法识别出桥梁外观的。需要先按下学习按键进行学习,桥梁危害1、桥梁危害2、正常桥梁和环境进行识别,然后将四种情况分别记录5次,此时再按下系统按键,设备再次观察到相似的桥梁表观病害时,就能够识别出桥梁发生的表观病害,若系统识别到病害,下位机蜂鸣器会进行报警,同时传送警告信号给上位机,上位机显示弹窗警告,提醒工作人员桥梁出现病害,及时进行桥梁的维修。同样当下位机检测到桥梁震动超过阈值时,蜂鸣器也会进行报警并发送警告信号到上位机。图7-3显示如图7-3,首先通过摄像头分别对环境、正常桥梁、桥梁危害1和桥梁危害2进行一次学习,之后再对于每个不同角度的学习5次。当系统学习后,摄像头再次捕捉到相似的图片,如裂痕,脏污等问题时,就会发送信号并报警。图7-4上位机界面图7-5上位机通信界面如图7-5,打开ZigBee模块,与电脑端进行通信。电脑端实时显示系统状态END/RUN。识别为0时表示测试环境,识别为1时表示正常桥梁,识别为2时表示桥梁危害1,识别为3时表示桥梁危害2。实时显示震频阈值和震频频率,震频警告显示为0时表示无桥梁震动警告,显示为1时表示桥梁震动异常,上位机可以手动进行震动频率阈值的设置。病害警告显示为0时表示无桥梁病害警告,显示为1时表示桥梁病害1,显示为2时表示桥梁病害2。
总结软件系统的调试过程并非一帆风顺,在调试过程中出现了许多错误。但在老师的指导下,我及时发现问题,改正了设计中的不足和不科学的领域。方案设计中的问题和解决办法主要涵盖下面一些方面。(1)在模拟功率模块仿真进程中,发现调试输出值始终未能满足设计规定。查找调试原理后,发现电路板焊接时出现了一些技术问题,于是重新焊接。(2)使用仿真软件,出现代码错误。随后调整,查出在启用程序时,单片机未能正常复位,在程序流程中加入复位程序后才获得准确数据。(3)在仿真模拟时,出现提示存有逻辑错误。虽然不影响效果的输出,但在实际印刷制版过程中会损坏电源电路。通过调研发现,数据信息发送错误代码的原因是未能分辨忙碌情况。展望设计以桥梁病害检测系统为研究对象,在具体分析桥梁危害造成的影响,明确提出了一款道桥的AI医生系统设计。全部设计的首要工作中如下所示。(1)根据查看相关资料,确定了桥梁病害对交通的影响,并在这个基础上明确提出了通过检测桥梁病害为首要目的的电车牌照检测系统;(2)对于上一部分提及的问题,明确提出了运用AI视觉技术实现对桥梁的健康状况的监控,运用AI视觉设计操纵所有体系的设计计划方案。(3)硬件配置电源电路K210为主板芯片。模拟仿真说明全部设计可以达到桥梁健康状况检测系统的要求,然而所有系统软件还存在许多问题和优化的地方,须在之后的学习中逐渐完善。(1)设计的操作系统包括ZigBee模块。在具体运用中,通过ZigBee模块进行上位机下位机通信。(2)在日后的作业和学习中,此产品可以获得充足的开发设计。
参考文献孙弋,孙媛媛,孙柒零,卢皓.基于ZigBee的便携式无线桥梁健康状况监测技术的研究[J].计算机测量与控制,2022.18(1):11.王丽丽,王运生,周振红.Zigbee无线通信技术及其在桥梁检测中的应用[J].电脑知识与技术,2020.赵文秀.桥梁检测技术综述[J].公路与汽运,2021.(3):148.潘长胜,赫广伟.桥梁检测技术及其发展趋势简述[J].黑龙江交通科技,2022.王海艳.公路混凝土桥梁结构的耐久性[J].桥梁隧道,2021.159.曾明杰.桥梁检测技术探讨[J].四川建材3:44~45.2020.惠为君.简述基于单片机ESP8266的智能配网[J].科学与信息化.2021,(15).赵晓玉,李宇,朱新玉,等.一种智能送药小车的设计研究[J].科技风.2020,(19).DOI:10.19392/ki.1671-7341.202019012.王伟宏,陈家明,苏文青,等.基于RFID智能分拣系统设计及其应用研究[J].机电工程技术.2018,(3).DOI:10.3969/j.issn.1009-9492.2018.03.023.
世尧,谭宇良,吴何畏.智能快递分拣系统设计[J].机械工程师.2018,(3).汪步升.医院中医药信息化建设[J].电脑编程技巧与维护,
2019,407(5):73-74.穆乃刚.Zigbee技术简介[J].电信技术,2021.3:84~86孙弋.“短距离无线通信及组网技术”[M].西安电子科技大学出版社,2022:172~177胡敏达.药房自助终端系统设计与实现[D].南京:东南大学,2018.阎大亮,王永亮,陆登城,等.基于互联网+自助取药系统设计与研究[J].科技创新与应用,2019(14):44-45.LiuYanfei,WangCheng,QiaoXiaojun,ZhangYunhe.AnImprovedDesignofZigbee.[J].WirelessSensorNetwork.IEEEXplore2020.NatthapolWatthanawisuth,AdisornTuantranontandTeerakiatKerdcharoen.[J].Microclimatereal-timemonitoringbasedonZigbeesensornetwork.IEEESENSORS2009Conference2021.KarlBenkic.PeterPlaninsic.ZarkoCucei.CustomWirelessSensorNetworkbasedonZigbee,[J].49thInternationalSymposiumELMAR-2020,12-14September2020,ZadarCroatiaMinCheng,JunhuiZhang,BingXuRuqiDing,GengYang.Anti-windupschemeoftheelectronicloadsensingpumpviaswitchedflow/powercontrol[J].Mechatronics,2019.MilesL.MorganDanJ.Curtis,DavideDeganello.Controlofmorphologicalandelectricalpropertiesofflexographicprintedelectronicsthroughtailoredinkrheology[J].OrganicElectronics,2021.A.G.Madureira,J.A.PeçasLopes.Ancillaryservicesmarketframeworkforvoltagecontrolindistributionnetworkswithmicrogrids[J].ElectricPowerSystemsResearch,2021,42(08):153-155.CaoWang,QiqiMei,LinglingZeng.TheWarehouseTemperatureandHumidityMeasurementandControlSystemBasedonSCMJ.[J].JournalofResearchinScienceandEngineering,2020,2(6).
附录电路图
源代码importKPUaskpuimportsensorimportlcdfromMaiximportGPIOfromfpioa_managerimportfmimporttimeimportgcfrommicropythonimportconst#导入constfromboardimportboard_infofrommachineimportUARTfrommachineimportTimerimportBEEP_3V3_Driveclass_num=4#类数量sample_num=20#样本数量THRESHOLD=11#阈值class_names=['Surroundings','Bridgenormality','Bridgedisease1','Bridgedisease2']#类名称:测试环境、正常桥梁、桥梁病害1、桥梁病害2Identify_Results={'Identify_Situation':"",'Identify_Index':''}#识别结果SYS_Status='END'#系统状态:状态cap_num=0#抓取训练数量train_status=0#训练状态last_cap_time=0#上次训练抓取时间last_btn_status=1#上次按键状态Shake_Num=0#震动次数总数Shake_Freq_Min=0#震动频率(1分钟)THR_Shake_Freq_Min=70#震动频率阈值Tim2_Count=0#定时器计数变量TIM_2_THRESHOLD_MS=100#定时器周期变量(ms)fm.register(board_info.PIN_SHAKE_1_IN,fm.fpioa.GPIOHS2)#注册IO-Shake_1Shake_1=GPIO(GPIO.GPIOHS2,GPIO.IN,GPIO.PULL_DOWN)#构建Shake_1对象#定时器回调函数周期TIM_2_THRESHOLD_MSmsdeffun_tim2(tim2):globalSYS_StatusglobalTim2_CountglobalShake_NumglobalShake_Freq_MinifSYS_Status=='RUN':Tim2_Count=Tim2_Count+1ifShake_1.value()==1:Shake_Num=Shake_Num+1ifTim2_Count>=60000//TIM_2_THRESHOLD_MS:#1分钟计时Tim2_Count=0Shake_Freq_Min=Shake_Num#记录震动频率(1分钟)Shake_Num=0#一分钟震动次数总数清零else:Tim2_Count=0Shake_Freq_Min=0Shake_Num=0#定时器1初始化,周期10mstim2=Timer(Timer.TIMER2,Timer.CHANNEL0,mode=Timer.MODE_PERIODIC,period=TIM_2_THRESHOLD_MS,callback=fun_tim2,priority=2)fm.register(board_info.PIN_Ctr_BEEP,fm.fpioa.GPIO0)#注册IO-Ctr_BEEPCtr_BEEP=GPIO(GPIO.GPIO0,GPIO.OUT)BEEP=BEEP_3V3_Drive.BEEP_3V3(Ctr_BEEP,0)#构建对象:BEEPBEEP.Init()#初始化:BEEP#BEEP.OFF()#蜂鸣器关闭#BEEP.ON()#蜂鸣器开启#KEY_BOOTfm.register(board_info.PIN_KEY_BOOT,fm.fpioa.GPIOHS0)KEY_BOOT=GPIO(GPIO.GPIOHS0,GPIO.PULL_UP)#KEY_SYSfm.register(board_info.PIN_KEY_SYS,fm.fpioa.GPIOHS1)#注册IO-KEY_SYSKEY_SYS=GPIO(GPIO.GPIOHS1,GPIO.IN,GPIO.PULL_UP)#构建KEY_SYS对象defexit_KEY_SYS_fun(KEY_SYS):#KEY_SYS中断回调函数globalSYS_Status,train_statusiftrain_status!=0:#若:训练完成time.sleep_ms(10)#消除抖动ifKEY_SYS.value()==0:#确认按键被按下ifSYS_Status=='END':SYS_Status='RUN'else:SYS_Status='END'KEY_SYS.irq(exit_KEY_SYS_fun,GPIO.IRQ_FALLING)#开启中断,下降沿触发#KEY1--未使用#KEY2+fm.register(board_info.PIN_KEY2_IN,fm.fpioa.GPIOHS3)#注册IO-KEY2KEY2=GPIO(GPIO.GPIOHS3,GPIO.IN,GPIO.PULL_UP)#构建KEY2对象defexit_KEY2_fun(KEY2):#KEY2中断回调函数globalSYS_Status,train_statusglobalTHR_Shake_Freq_Miniftrain_status!=0:#若:训练完成time.sleep_ms(10)#消除抖动ifKEY2.value()==0:#确认按键被按下ifSYS_Status=='END':#若:系统状态ENDifTHR_Shake_Freq_Min<999:THR_Shake_Freq_Min=THR_Shake_Freq_Min+1KEY2.irq(exit_KEY2_fun,GPIO.IRQ_FALLING)#开启中断,下降沿触发#KEY3-fm.register(board_info.PIN_KEY3_IN,fm.fpioa.GPIOHS6)#注册IO-KEY3KEY3=GPIO(GPIO.GPIOHS6,GPIO.IN,GPIO.PULL_UP)#构建KEY3对象defexit_KEY3_fun(KEY3):#KEY3中断回调函数globalSYS_Status,train_statusglobalTHR_Shake_Freq_Miniftrain_status!=0:#若:训练完成time.sleep_ms(10)#消除抖动ifKEY3.value()==0:#确认按键被按下ifSYS_Status=='END':#若:系统状态ENDifTHR_Shake_Freq_Min>1:THR_Shake_Freq_Min=THR_Shake_Freq_Min-1KEY3.irq(exit_KEY3_fun,GPIO.IRQ_FALLING)#开启中断,下降沿触发defdraw_string(img,x,y,text,color,scale,bg=None):ifbg:img.draw_rectangle(x-2,y-2,len(text)*8*scale+4,16*scale,fill=True,color=bg)img=img.draw_string(x,y,text,color=color,scale=scale)returnimgOperation_State=0Shake_State=0#警告状态:震动异常Disease_State=0#警告状态:病害异常defOperation(operation_state):globalSYS_StatusglobalTHR_Shake_Freq_Min,Shake_Freq_MinglobalShake_State,Disease_StateifSYS_Status=='RUN':#系统RUN状态下ifShake_Freq_Min>THR_Shake_Freq_Min:#震动异常Shake_State=1else:Shake_State=0ifOperation_State==1:#类1(正常桥梁)Disease_State=0elifOperation_State==2:#类2(桥梁病害1)Disease_State=1elifOperation_State==3:#类3(桥梁病害2)Disease_State=2elifOperation_State==0:#测试环境--surroundingsDisease_State=0else:Disease_State=0else:Shake_State=0Disease_State=0#示警ifShake_State!=0orDisease_State!=0:BEEP.ON()#蜂鸣器开启else:BEEP.OFF()#蜂鸣器开启fm.register(board_info.PIN_ZRXD_MCU_TX,fm.fpioa.UART2_TX,force=True)#注册到内部IOfm.register(board_info.PIN_ZTXD_MCU_RX,fm.fpioa.UART2_RX,force=True)#注册到内部IOZigBee=UART(UART.UART2,38400,8,1,0,timeout=1000,read_buf_len=4096)#inituartSend_Data='-'Rece_Data='-'defSend_Data_Handle():#发送globalSend_DataglobalSYS_StatusglobalOperation_StateglobalShake_State,Disease_StateglobalTHR_Shake_Freq_Min,Shake_Freq_MinSend_Data='+SS%sAS%1dTHR%03dSF%03dWS%dWD%d-'%(SYS_Status,Operation_State,THR_Shake_Freq_Min,Shake_Freq_Min,Shake_State,Disease_State)ZigBee.write(Send_Data)TIM_1_THRESHOLD_MS=1000#定时器回调函数周期1000msdeffun(tim):globaltrain_statusiftrain_status!=0:#若:训练完成Send_Data_Handle()#定时器1初始化,周期10mstim1=Timer(Timer.TIMER1,Timer.CHANNEL0,mode=Timer.MODE_PERIODIC,period=TIM_1_THRESHOLD_MS,callback=fun,priority=1)defRece_Data_Handle():globalRece_DataglobalSYS_StatusglobalTHR_Shake_Freq_Mintmp=ZigBee.read()ifnottmpisNone:print(tmp)Rece_Data=tmp.decode()print(Rece_Data)ifRece_Data[0]=='+'andRece_Data[-1]=='-':ifRece_Data[1]=='S'andRece_Data[2]=='S':SYS_Status=Rece_Data[3:-1]elifRece_Data[1]=='T'andRece_Data[2]=='H'andRece_Data[3]=='R':ifSYS_Status=='END':thr_tmp=int(Rece_Data[4:-1])if0<=thr_tmp<=999:THR_Shake_Freq_Min=thr_tmpelse:passthr_tmp=0else:passelse:passRece_Data=Noneelse:Rece_Data=Nonetmp=None#设置摄像头sensor.reset()sensor.set_pixformat(sensor.RGB565)sensor.set_framesize(sensor.QVGA)sensor.set_windowing((224,224))#初始化LCDlcd.init()#设置摄像头水平与垂直镜像sensor.set_vflip(True)sensor.set_hmirror(True)#再次运行删除模型try:delmodelexceptException:passtry:delclassifierexceptException:passgc.collect()model=kpu.load("/sd/sipeed_learn_model.smodel")#加载模型#model=kpu.load(0x300000)classifier=kpu.classifier(model,class_num,sample_num)#模型初始化while1:img=sensor.snapshot()#采集图片#captureimgiftrain_status==0:#如果训练状态:0(未训练)ifKEY_BOOT.value()==0:#如果按键值为:0(按下)time.sleep_ms(30)#延时30msifKEY_BOOT.value()==0and(last_btn_status==1)and(time.ticks_ms()-last_cap_time>500):#如果按键按下&&上次按键状态==1&&时差大于500last_btn_status=0#上次按键状态=1last_cap_time=time.ticks_ms()#更新上次抓取时间ifcap_num<class_num:#如果抓取数量<类数量index=classifier.add_class_img(img)#添加类图片,并获取当前添加图片的indexcap_num+=1#cap_num自增1print("addclassimg:",index)#打印当前添加的类elifcap_num<class_num+sample_num:#如果:类数量<抓取数量<类数量+样例数量index=classifier.add_sample_img(img)#添加样例并获取当前添加样例的indexcap_num+=1#cap_num自增1print("addsampleimg:",index)#打印当前添加的样例else:#如果:按键弹起img=draw_string(img,2,200,"releasebootkeyplease",color=lcd.RED,scale=1,bg=lcd.WHITE)#请松开按键else:#如果未按下按键time.sleep_ms(30)#延时30msifKEY_BOOT.value()==1and(last_btn_status==0):#如果按键按下&&上次按键状态==0last_btn_status=1#上次按键状态=1ifcap_num<class_num:#如果抓取数量<类数量img=draw_string(img,0,200,"pressbootkeytocap"+class_names[cap_num],color=lcd.RED,scale=1,bg=lcd.WHITE)#显示请按键抓取类xelifcap_num<class_num+sample_num:#如果类数量<抓取数量<类数量+样例数量img=draw_string(img,0,200,"bootkeytocapsample{}".format(cap_num-class_num),color=lcd.RED,scale=1,bg=lcd.WHITE)#显示请按键抓取样例x#trainandpredictiftrain_status==0:#如果训练状态:0(未训练)ifcap_num>=class_num+sample_num:#如果类数量+样例数量<抓取数量print("starttrain")#print开始训练img=draw_string(img,30,100,"training...",color=lcd.RED,scale=2,bg=lcd.WHITE)#显示training...lcd.display(img)#显示classifier.train()#训练print("trainend")train_status=1#训练状态=1else:#如果训练状态:1Rece_Data_Handle()Identify_Results['Identify_Situation']=''Identify_Results['Identify_Index']=''res_index=-1try:res_index,min_dist=classifier.predict(img)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 儿科无尿护理
- 语言送给蛤蟆的礼物
- 硬式内镜处理流程及注意事项
- 自我时间管理培训
- 带状疱疹护理查房
- 高中一年级必修一化学笔记总结模版
- 汽车行业2024年年报及2025年一季报综述:以旧换新政策推动业绩增长行业盈利能力复苏191mb
- 宝宝感冒护理指南
- 三晋卓越联盟·2024-2025学年高三5月质量检测卷(25-X-635C)地理(B)
- 资料员工作总结模版
- 委托寻找房源协议书
- 景观毕业设计
- 法洛四联症的护理课件
- 2025年佛山市三水海江建设投资有限公司招聘笔试参考题库附带答案详解
- 卤味学员合同协议书
- 统编版三年级语文下册期末考试卷(带答案)
- 【课件】清朝的边疆治理+课件统编版七年级历史下册
- 外贸业务培训课件教学
- 2025年健康管理师职业技能考试笔试试题(100题)含答案
- 中国成人呼吸系统疾病家庭氧疗指南(2024年)解读
- 2025年企业管理专业考试试题及答案详解
评论
0/150
提交评论