找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 719|回复: 0
打印 上一主题 下一主题
收起左侧

多路浮地测量 Multisim Proteus仿真

[复制链接]
跳转到指定楼层
楼主
一、技能训练目的1. 针对 10~100mV 和 4~20mA 的 2 路(至少各 1 路,可扩展为更多路)浮地测量信号,设计信号调理电路(放大、滤波等)实现测量精度为 1mv 和 0.1mA 的双路数据采集系统;2. 熟悉并掌握系统开发 Altium Designer、Multisim 等软件的应用,能完成电路仿真;3. 掌握单片机工作原理并使用 STC12C5A60S2 单片机;4. 掌握仪用放大电路的应用,能针对接口输入规范的要求、选择适当的器件和工具,设计实验并实现;5. 根据原理图进行电路焊接调试,完成数据采集变换系统的焊接及编程工作;6. 掌握 PCB 制版及 SMT 焊接的工艺流程;7. 拓展单片机系统,实现多路数据及信号测量;8. 掌握通用板的使用方法以实现电路搭载。

二、
技能训练任务
1. 完成符合要求的系统原理设计;2. 掌握工程实践中电路原理图与 PCB 图、原理图库、PCB 库、的绘制规范;3. 完成浮地差动信号采集系统的原理图和 PCB 板的设计;4. 应用仿真软件对系统进行功能仿真(尽量全面);5. 完成多路数据采集系统焊接(单片机系统+以通用板为基础的信号调理电路)与测试;6. 完成多参量数据采集方案的实现;7. 完成设计与系统测试及分析。

三、
实验设计与实验结果(支撑目标2、3、4)

1、
电路系统设计(给出3种电路设计方案,并从成本、性能等因素分析方案并得出结论)(支撑目标3)

方案一
采用双运放放大电路方案,针对10~100mV 和 4~20mA 的 2 路(至少各 1 路,可扩展为更多路)浮地测量信号设计信号调理电路,通过合理选择双运放型号(如LM358等低成本、高性能元件)、电阻、电容等元件,并精心设计电路结构(包括放大、滤波等环节),能够实现一个既满足1mV和0.1mA高精度测量要求,又具备强抗干扰能力、良好稳定性及易于扩展性的双路数据采集系统。此方案不仅成本相对较低,而且通过精确的元件选择和电路设计,确保了信号的精确放大与测量,同时,双运放放大电路的设计也为其提供了足够的增益带宽积,以适应不同信号的放大需求。此外,该方案对共模干扰和噪声具有较强的抑制能力,适合用于浮地测量信号,且通过合理的元件选择和电路设计,可以确保电路在各种环境条件下保持稳定的性能。因此,在针对此类浮地测量信号的双路数据采集系统设计中,采用双运放放大电路方案无疑是一个值得考虑和推荐的优秀选择。
图 1 双运放放大电路
方案二采用LM328运算放大器、电阻及二极管等元件构建的差分放大电路,在针对10~100mV 和 4~20mA的 2 路(至少各 1 路,可扩展为更多路)浮地测量信号的双路数据采集系中,展现出低成本、高精度测量(达1mV和0.1mA)、强抗干扰能力(有效抑制共模扰)及良好稳定性等显著优势。该电路通过精确的元件选择与电路设计,确保了信号的精确放大与测量,同时,LM328的低功耗与高增益特性使其非常适合此类应用。然而,该电路也有一些缺点,如为了实现高精度的信号放大和测量,需要对元件的精度进行严格控制;电虽然差分放大电路的设计相对简单,但调试过程可能需要一定的专业知识和经验;LM328运算放大器的带宽可能限制差分放大电路在高速应用中的性能。
图 2 差分放大电路
   方案三针对10~100mV 和 4~20mA 的 2 路(至少各 1 路,可扩展为更多路)浮地测量信号,设计一个采用三运放放大电路的信号调理系统以实现1mV和0.1mA的高精度双路数据采集,该系统在成本上相对较高但提供了高精度测量、强抗干扰能力和良好的稳定性,同时展现出易于扩展至多路信号处理的灵活性。通过精心选择运算放大器型号和辅助元件,并优化电路设计,该系统能够确保信号的精确放大与传输,有效抑制共模干扰和噪声,适应各种环境条件下的稳定性能需求。然而,三运放放大电路也带来了较高的成本、相对复杂的电路设计和调试过程,以及相对较大的功耗的缺点。
图 3 三运放放大电路
方案选择最终经过我们小组内的讨论后选择了双运放放大电路,理由在于:双运放放大电路在提供足够放大倍数和稳定性的同时,保持了适中的成本和相对较低的复杂度,其性能足以满足高精度测量需求,且无需像差分放大电路那样可能需要额外的隔离措施,也不像三运放放大电路那样因高成本和复杂性而可能过于昂贵或不适用于所有场景。双运放放大电路能够处理浮地信号,提供较低的噪声和失真,且易于实现和扩展,因此在成本效益、技术实现难度和实际应用需求之间提供了良好的平衡。尽管其共模抑制比可能略低于三运放放大电路,但通常足够满足大多数高精度测量应用的要求,使得双运放放大电路成为这一特定应用场景下的优选方案。通过精心设计和调试,双运放放大电路能够确保信号的精确放大与传输,实现所需的高精度数据采集,同时保持系统的稳定性和可靠性。

2、
设计步骤(需针对被测目标,图文说明如何设计实验及实验步骤)(支撑目标2)
(1)根据设计的总体目标,首先规划并绘制出电路的结构框图和Multisim仿真图
图 4 系统结构框图
图 5  Multisim电路仿真图
(2)在仿真验证通过的基础上,将设计好的原理图转化为AD原理图,并进一步进行PCB的布局与布线设计。
图 6 原理图                                                                  
图 7 PCB绘制
(3)SMT 工艺流程学习;完成系统焊接与测试。
图 8 焊接实物图
(4)完成系统程序设计,在现有硬件基础上,实现模块化程序编制,验证和仿真调试系统硬件工作状态。主程序为:
  1. #include <reg52.h>
  2. #include "lcd1602.h"
  3. #include "adc0832.h"
  4. #include <stdio.h>
  5. void LCD_WriteFloat(float num);
  6. void main() {
  7.           unsigned char voltageAdc, currentAdc;
  8.     float voltage, current;
  9.     LCD_Init(); // 初始化LCD
  10.     LCD_Clear(); // 清除LCD显示

  11.     while (1) {
  12.         voltageAdc = ADC0832_Read(0); // 读取CH0的电压值
  13.         currentAdc = ADC0832_Read(1); // 读取CH1的电流值
  14.         voltage = (float)voltageAdc /255*5.0*20; // 转换电压值
  15.         current = (float)currentAdc /255*5.0*4; // 转换电流值
  16.         // 显示电压值
  17.         LCD_SetCursor(0, 0); // 设置LCD光标位置
  18.         LCD_WriteString("Vol: ");
  19.         //LCD_WriteCommand(0x80+3);        
  20.                          LCD_WriteData((unsigned int)voltage/100+0x30);
  21.                     LCD_WriteData((unsigned int)voltage%100/10+0x30);
  22.                     LCD_WriteData((unsigned int)voltage%10+0x30);
  23.                     LCD_WriteData('.');
  24.                     LCD_WriteData((unsigned int)voltage%100/10+0x30);
  25.                           LCD_WriteString("mV");
  26.                          // 显示电流值
  27.         LCD_SetCursor(1, 0); // 设置LCD光标位置4
  28.         LCD_WriteString("Cur: ");
  29.         //LCD1602_Write_Com(0xC0+3);
  30.                     //LCD_WriteFloat(current); // 假设已经实现了LCD_WriteFloat函数
  31.                     LCD_WriteData((unsigned int)current%100/10+0x30);
  32.                     LCD_WriteData((unsigned int)current%10+0x30);
  33.                           LCD_WriteData('.');
  34.                     LCD_WriteData((unsigned int)current%100/10+0x30);
  35.         LCD_WriteString("mA");
  36.         LCD_Delay(100); // 等待一段时间再次读取
  37.     }
  38. }
  39. void LCD_WriteFloat(float num) {
  40.     char buffer[16];
  41.     sprintf(buffer, "%f", num);
  42.     LCD_WriteString(buffer);
复制代码



图 9 Proteus仿真图
3、系统调试(包括仿真实验结果和实测实验结果,并从仿真软件的局限性角度说明仿真结果与实测结果的差别,其中实测实验结果需给出照片)(支撑目标2、4)(1)实测结果
图 10 实测结果图
(2)仿真结果
图 11 Proteus仿真结果图
图 12 Multisim仿真结果图
(3)结果分析通过分析仿真与实物结果,得到的最终结果与系统设计要求相一致,且该信号调理电路很好的实现了测量精度为1mV和0.1mA的设计要求;PCB图的绘制也达到了原理图的设计要求,实测结果得到了成功的实验结果。

四、 解释技能训练中,电子仪器加工过程的工艺流程与工艺参数,对环境及产品质量的影响。(考察目标1、5,对产品质量的影响支撑目标1、对环境的影响支撑目标5)在电子仪器加工过程中,严格控制从原理图设计到PCB制版、SMT焊接以及系统调试的工艺流程与工艺参数,不仅直接决定了产品的质量和可靠性,还对环境产生重要影响,因此需确保设计准确性、版图规范性、参数精准控制及调试充分性,并妥善处理制版残液和焊接烟尘等环境问题,以实现高质量生产和环境友好型制造。具体而言,该过程首先始于原理图设计,利用专业软件如Altium Designer进行电路布局与逻辑验证,确保电路设计的正确性和可行性,这是电子仪器制造的基础,任何设计上的瑕疵都可能直接影响后续产品的性能和稳定性。随后,将原理图转化为PCB版图,进行精密的布局和布线设计,并设定关键的工艺参数,如线宽、线距和铜厚,这些参数的选择需兼顾电路性能和制造要求,任何偏差都可能导致电路板质量下降。进入PCB制版阶段,需将设计数据发送给制版厂家,厂家在制版过程中需严格控制蚀刻深度、阻焊层厚度等工艺参数,确保电路板的质量。接着是SMT焊接,即将元器件精确贴片到电路板上,并通过精确控制的焊接温度、时间和压力等参数进行焊接,这一过程对焊接质量和元器件的可靠性至关重要。然而,在追求高质量产品的同时,也不能忽视对环境的影响。制版过程中产生的化学废液和SMT焊接过程中释放的烟尘都含有有害物质,若处理不当,将对环境和操作人员构成威胁。因此,必须采取严格的环保措施,如控制化学药品使用量、妥善处理废液和烟尘收集处理等,以减少对环境的污染。最后,系统调试阶段是对整个加工过程质量的全面检验。通过硬件和软件调试,测试电路的性能指标,确保系统满足设计要求。调试的充分性直接影响产品的最终质量,任何潜在的故障都可能在这一阶段被发现并修复。综上所述,电子仪器加工过程是一个复杂而精细的系统工程,需要严格控制每一个环节的工艺流程和工艺参数,以确保产品的质量和可靠性。同时,也要注重环保,采取必要的措施减少对环境的影响,实现可持续发展。只有这样,才能生产出既满足市场需求又符合环保要求的高质量电子仪器产品。



上图Proteus仿真和Word文档3个文件下载: 多路浮地测量.zip (1.73 MB, 下载次数: 0)
单片机程序: 无
原理图: 无
资料仅供参考.

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表