文章目录

  • 重量检测系统简介
    • 下载地址
  • 一、测量重量的外部工具
    • 应变式平行梁称重传感器
  • 二、单片机方案设计
  • 三、LABVIEW软件设计
    • 应力测试系统Labview部分程序框图
    • Labview前面板及功能设计
  • 四、校正过程
  • 五、数据处理结果

重量检测系统简介

此次重量检测系统设计设计利用20KG称重计和单片机采集压力数据,LabVIEW软件作为上位机将采集到的数据进行处理和分析。由于20KG的物体过于难找,该系统用于检测0-2KG重物的重量。主要利用VISA驱动实现LabVIEW和单片机的串口通信,显示重量数值,经校正和后续数据处理实现重量检测系统设计。单片机连接称重计和HX711芯片采集重量数据,LabVIEW编写上位机程序实现重量数据显示、保存、回看功能。

下载地址

下边的链接包括上位机LABVIEW和keil软件的32程序,直接连上stm32串口上存在重量数据,在电脑的labview中打开VI程序,就可以得到下述所有功能,加油!!!你们可以的!

下载地址
https://download.csdn.net/download/W422028698/14038678

一、测量重量的外部工具

应变式平行梁称重传感器

图片‘

二、单片机方案设计

称重时,平行梁电桥受到外力,从而引起电阻阻值变化,通过差分电路电压改变输出信息给单片机,单片机经过数据处理后输出数据给上位机Labview。
利用keil软件编写单片称重程序
下边这一部分只是主程序
如果其他有需要,可以评论区发送邮箱地址,我会发给你们的

#include "stm32f10x.h"
#include "lcd1602.h"
#include "delay.h"
#include "HX711.h"
#include "usart.h"
//sz1[Addr]=NewValue/100 +0x30;
//sz1[Addr+1]=NewValue%100/10 +0x30;
//sz1[Addr+2]=NewValue%100%10 +0x30;//定义初始显示位置
#define Addr    0
//在这里定义一个全局变量,这个变量代表电子秤测量值
//这个是你源程序定义的数组,我将它放到这了里,应为下面要用到。
uint8_t sz1[]="           ";
uint8_t str1[]="g";
uint8_t str2[]="error!";
uint8_t str3[]="weight:";void All_Init(void)
{delay_init();LCD1602_Init();Init_HX711pin();   NVIC_Configuration();    //设置NVIC中断分组2:2位抢占优先级,2位响应优先级uart_init(9600);    //串口初始化为9600Get_Maopi();               //称毛皮重量delay_ms(1000);delay_ms(1000);Get_Maopi();               //重新获取毛皮重量
}void Display(void)
{       if(Weight_Shiwu>20000){LCD1602_Init();LCD1602_Show_Str(5,0,str2);}else{//2.05  555   2.07  550Weight_Shiwu=Weight_Shiwu/1.965;sz1[Addr]=Weight_Shiwu/10000 +0x30;sz1[Addr+1]=Weight_Shiwu/1000%10 +0x30;sz1[Addr+2]=Weight_Shiwu/100%10 +0x30;sz1[Addr+3]=Weight_Shiwu/10%10 +0x30;sz1[Addr+4]=Weight_Shiwu%10 +0x30;LCD1602_Show_Str(0,0,str3);  LCD1602_Show_Str(7,0,sz1);  LCD1602_Show_Str(12,0,str1);}
}int main(void)
{All_Init();while(1){Get_Weight();printf("%d\r\n",Weight_Shiwu); //打印 Display();delay_ms(1000);}
}

三、LABVIEW软件设计

应力测试系统Labview部分程序框图


首先进行前面板内容的初始化即按钮的置零和显示的置零、在进行不同事件的判断,分别为打开串口按钮摁下、端口号波特率改变、接收区清空、串口波形图的清零、EXIT按钮退出系统、显示重量、去皮重量和测量误差,并加入数据回看功能,当按下按钮时,此时的时间重量和去皮重量将显示在前面板上,并存入到TXT文件中。


串口采集数据,将数据输出至前面板进行显示和处理。由于称重计并不是很合适,需要提前进行一系列的调试,所以本次项目直接在LabVIEW软件中编写部分程序实现重量的初次置零和自动判断功能。

Labview前面板及功能设计



前面板分为两部分:一是串口采集,二是重量检测系统。
串口采集中,配置好串口之后,左侧“由串口接收到的数据”窗口可显示由单片机接收到的数据信息,然后转化为波形图由中间“波形显示”显示实时的重量变化,在右侧“数据处理”窗口可以通过按键实现清空接受数据窗口、清空波形图表、保存波形、退出等功能。
在重量检测系统中,可以实现实时的重量显示并通过刻度表以及“重量数值”窗口显示。重量检测系统左侧,可以通过“去皮称重”“误差测量”按钮实现去皮处理和误差测量处理功能。

四、校正过程

本次测量校正过程是通过8个20kg的砝码进行的校正,其中校正结果如下图

五、数据处理结果

经应力检测系统处理记录过的重量信息,会被记录在“不同重量数据记录”的记事本中,记录处理时间、检测重量、去皮重量三种信息,方便用户随时查询称重信息。
运行之后,大概就这样的。

基于Labview的重量检测系统相关推荐

  1. 电量监测程序 c语言,基于单片机的电量检测系统设计方案.doc

    基于单片机的电量检测系统设计方案 1绪论 自第一个微处理器问世以来,以微处理器为核心构成的计算机以各种各样的形式,无孔不入的渗入到人们的生产.生活.科研等各个领域,为人类带来了渗透到各个领域的&quo ...

  2. linux arm关闭光栅,基于Linux的光栅检测系统的软件设计与实现.pdf

    基于Linux的光栅检测系统的软件设计与实现.pdf - - - - - - - - - - 一 竣 应 ((_- 基 于 Linux 系 统 的 软 件 设 计 与 实 现 东北大学信息科学与工程学 ...

  3. 基于MATLAB的疲劳检测系统

    基于MATLAB的疲劳检测系统 一.课题介绍 随着汽车工业的不断发展,随之而来的社会问题也愈加严重.交通事故给人们造成巨大伤害的同时,也给社会带来沉重的负担和影响.由于疲劳驾驶是引起交通事故的一个主要 ...

  4. 基于nb-iot的水质检测系统

    基于nb-iot的水质检测系统 github地址:nanalizi/-nb-iot- (github.com) 器材:     STM32F103C8T6开发板      目的:     ds18b2 ...

  5. Python基于YOLOv7的火灾检测系统(源码&教程)

    1.项目背景 为解决传统传感器在检测火灾的过程中受到环境.安装距离等因素影响导致适应性差的缺点,本文基于视觉传 感器,通过视觉目标检测技术对火灾进行检测,从而实现火灾的预警. 2.识别效果展示 3.视 ...

  6. 基于Dlib的疲劳检测系统

    需要源码的朋友可以私信我 基于Dlib的疲劳检测系统 1.设计背景及要求 2.系统分析 3.系统设计 3.1功能结构图 3.2基于EAR.MAR和HPE算法的疲劳检测 3.2.1基于EAR算法的眨眼检 ...

  7. 基于YOLOv4的目标检测系统(附MATLAB代码+GUI实现)

    摘要:本文介绍了一种MATLAB实现的目标检测系统代码,采用 YOLOv4 检测网络作为核心模型,用于训练和检测各种任务下的目标,并在GUI界面中对各种目标检测结果可视化.文章详细介绍了YOLOv4的 ...

  8. 基于YOLOv5的目标检测系统详解(附MATLAB GUI版代码)

    摘要:本文重点介绍了基于YOLOv5目标检测系统的MATLAB实现,用于智能检测物体种类并记录和保存结果,对各种物体检测结果可视化,提高目标识别的便捷性和准确性.本文详细阐述了目标检测系统的原理,并给 ...

  9. 基于matlab的裂缝检测系统GUI

    基于matlab的裂缝检测系统GUI,对图像进行直方均衡化处理,中值滤波法去噪处理,亮化增强对比度,图像二值化,对二值图像进行滤波处理,裂缝识别,裂缝判断,裂缝拼接,裂缝投影,用方框将裂缝标记出来,显 ...

最新文章

  1. POJ-1041 John's trip
  2. 数据结构-树和二叉树01(定义、度、深度、有序树、森林)
  3. java 并发测试程序_java并发编程实战:第十二章---并发程序的测试
  4. Redis failover过程
  5. 【牛客OI周赛7-普及组ABCD 非官方题解】暴力,二分,KMP,尺取(STL或Hash)
  6. 笔记一 Redis基础
  7. ubuntu 禁用透明大页_如何在ubuntu上默认启用透明的大页面?
  8. 饿了么4年+阿里2年:研发路上的一些总结与思考
  9. eclipse代码格式化
  10. 别整那些花里胡哨的,女孩子喜欢简单直接的男生
  11. python学习1(下载、安装)
  12. Python: 组合管理与蒙特卡洛方法实现
  13. java开发转测试开发经历
  14. C语言入门20个简单程序|最新更新2021.7.13
  15. lisp 标注螺纹孔_尺寸标注之螺纹标注的正确方式
  16. Word2016各种快捷键
  17. CString的拆分词函数Tokenize
  18. 判断当前时间是否是法定节假日或工作日
  19. freeCAD学习笔记二:复制与放置多个相似的实体
  20. ROS安装:一键解决人生烦恼

热门文章

  1. 网站建设与管理的基本流程
  2. socket用户名登录c语言,用C语言socket登入斗鱼弹幕服务器的问题
  3. web期末作业设计网页_传统文化设计题材_手工艺木雕
  4. 地牢围攻2 宽屏补丁 使用说明
  5. Stendhal的简单理解
  6. 使用Wireshark抓取Mqtt 协议包
  7. Android安卓逆向工程师
  8. Qt菜单栏、工具栏和状态栏
  9. linux部署项目报错java.sql.SQLSyntaxErrorException: Table ‘xxx‘ doesn‘t exist
  10. 案例讲解如何将ER图转化为关系模型