【单片机】使用AD7606+AD698芯片读取RVDT角位移

  接上文,经过第一阶段的AD2S1210测量旋转变压器的角位移之后,现在用AD698来进一步的加强验证,目前网上有关于这方面的研究资料还是挺少的。
  AD698是美国ADI公司生产的单片式线性位移差分变压器信号调节系统。将AD698与RVDT/LVDT配合,能够高精确性、可重复性的将RVDT/LVDT的旋转/机械位移转换成单极性或双极性的直流电压,消除原边驱动的幅度漂移所导致的比例系数误差,改善测量的温度性能和稳定性。

0. 实验要求

  基于STM32单片机,使用AD7606+AD698芯片读取RVDT角位移及速度。
  RVDT:角位移传感器。由交流激励源驱动,产生一对交流电压,该电压根据磁芯的旋转位移进行相应变化。(这里用的是正余弦款,非差分款)
  RVDT广泛应用于铁路、航天航空、机械、建筑等领域,实现阀门开度、油门杆角度和精密位移的测量和反馈控制。
  硬件设施:STM32F103C8T6、TPS5430变压器、AD7606采样芯片、AD698信号调节器、CH340串口、TDS220示波器、RVDT及其他电容电阻元器件。

1. 硬件平台搭建

  AD7606采样芯片5V单电源供电,AD698芯片±15V供电。
  整体思路:AD698输出与RVDT角位移有关的直流电压,传给ADC采样芯片7606,随后通过串口发送到计算机显示电压值及对应的旋转角度。

2. 实验环境

3. AD7606采样芯片

产品特性

  • 高分辨率、双极性输入、同步采样、逐次逼近型模数转换器。
  • 8路同步采样,16位分辨率,SPI/DSP接口,双极性模拟输入范围:±10V或±5V,吞吐速率最高200kSPS。
  • 应用场景:电力线监控和保护系统、多相电机控制、仪表和控制系统、多轴定位系统、数据采集系统(DAS)。

根据芯片说明书要求,有几点需要注意:

转换时间

  这里采用16倍过采样,转换时间不得低于66us,转换完成后同时等待busy位再开始读取转换数据。

串行接口时序图

   方便起见,采用转换完成之后统一读取的方式,其中SPI通讯时序根据下图来编写。

串行接口时的说明

   CS接口保持低电平,SCK上升沿移出,下降沿移入,SCK空闲时高电平。
   所有模拟输入通道同步采样,串行接口读取,这里仅用一路DoutA线逐个输出数据,由于是16位分辨率,8个通道,所以完整的读取一次数据需要128个SCK周期。

其他的注意事项根据芯片数据手册看着弄就行了。

4. AD7606实验现象

   硬件和软件里都设置好之后,由于AD7606通道悬空时,默认输入电压是2V左右,这里通过串口发送8个通道值进行查看。

   可见,串口显示8个通道值均在2.07V左右,满足条件,说明功能良好,AD7606设置完成。

5. AD698信号调节器

产品特性

  • 通用LVDT/RVDT信号调节器,与LVDT/RVDT一起使用,将传感器的机械/位移位置转换为单极或双极直流电压,具有高度的准确性和可重复性。
  • 通过添加一些外部无源元件来设置激励频率和幅值,输出直流信号,可与四线制或半桥式LVDT/RVDT使用。
  • 技术指标:激励频率:20~20KHz、输出角度范围:±40°、输出电压:±11V,线性误差:0.05%。

根据芯片说明书要求,有几点需要注意:

外部元器件选型

  AD698是通过添加一些外部无源元件来设置激励频率和幅值。这里使用激励频率为3KHz,激励幅值3V,系统带宽250Hz。所以选择C1=12nF,C2=C3=C4=470nF,R1=10.3KΩ,R2=14KΩ。然后接线方式按照四线制方式接线,B接cos端,A接sin端。By the way,注意-BIN端和-AIN端不要短接到地,要分开接。

Vout引脚输出电压公式

根据公式可得,旋转角度 α \alpha α A / B = sin ⁡ / cos ⁡ = tan ⁡ α = V o u t / I r e f / R 2 = V o u t / 7 ⇕ α = a r c tan ⁡ ( V o u t / 7 ) \mathrm{A}/\mathrm{B}=\sin /\cos =\tan\mathrm{\alpha}=\mathrm{Vout}/\mathrm{Iref}/\mathrm{R}2=\mathrm{Vout}/7 \\ \Updownarrow \\ \alpha =\mathrm{arc}\tan \left( \mathrm{Vout}/7 \right) A/B=sin/cos=tanα=Vout/Iref/R2=Vout/7α=arctan(Vout/7)

6. AD7606+AD698实验现象

1. 示波器读激励频率

   我设置的激励频率是3KHz,示波器读出来是3.062KHz,在允许误差范围内。幅值约在3v左右,满足条件。

2. 串口数据

  AD698的Vout接在AD7606的第一通道,由于直接输出16进制的直流电压信号不方便看,所以转化为输出旋转角度 α \alpha α 和对应的 A/B 的变量值。
  另外,由于AD7606采样是双极性输入,所以采样到的电压值有正有负,因此解算出来的 α \alpha α 也是有正有负的,而且当旋转角度在±40°范围内,采样值应该是跟随变化的。当旋转角度在范围以外时,采样值不变化。
  串口现象如下所示:

  可以看出,角度范围在[-36°~36°]之间,满足AD698的技术指标±40°,且角度的变化精确跟随手动旋转变压器的变化,成功的输出了对应变化的直流信号,达到了本次实验的最终目的。

7. 总结

  本次实验采用AD7606采样电压值,通过集成芯片AD698实现RVDT传感器的测量,可根据传感器特性灵活设置RVDT传感器激励信号的频率和幅值,改变输出信号范围和偏置,实现了RVDT信号的精确测量,为后续RVDT信号的反馈控制应用提供支持。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2803293.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

ctfshow MISC 2023愚人杯做题笔记

2023愚人杯 1.奇怪的压缩包 下载的题目压缩包是ZIP伪加密,修改后,解开得一个图片文件black.png。使用01编辑器打开,发现尾部有一个压缩包。 把尾部的压缩包另存后,发现该压缩包为加密包。再用01打开,发现尾部有一个b…

日常工作软件安装总结

日常工作软件安装总结 系统服务安装集成 Skywalking SpringBoot集成Skywalking服务 地址:http://192.168.1.52:8686/general nohup java -javaagent:/mnt/skywalking-agent/skywalking-agent/skywalking-agent.jar -DSW_AGENT_NAMEdev::rms-risk-service agent…

Web Serial API串口通信,实现web和electron扫码枪读取数据

文章目录 前言一、Serial API是什么?二、API使用步骤1.navigator.serial.requestPort()2.port.open(options)3.reader.read()4.port.close()其他常见API:完整代码 三、electron使用 前言 本文将讲述Web Serial API简单应用,以扫码枪为示例,通…

idea查找所有未使用的代码

1.背景 最近在做无用代码下线的时候发现一个方法里会引用很多个方法,一旦该方法删除以后,里面被引用的方法应该也一同下线,但是一个一个的找过去比较耗费精力,下面给大家推荐一个idea自带的代码分析工具 2.代码分析工具 Code-&…

【无标题】旋转链表与力扣报错:member access within null pointer of type ‘struct ListNode‘

项目场景: 做单链表反转题目,报错:member access within null pointer of type ‘struct ListNode’ 题目链接:LINK 问题描述 我明明在初始化指针时候,已经处理了n2->next情况却依然报错 这个报错提示含义是:大概就…

创新性3D数据合成模型,微软推出EgoGen

随着AR、VR等设备的广泛应用,第一人称的应用开始增多。但在研发方面面临不同的挑战,例如,图像模糊、视觉混乱、遮挡更严重等,给视觉模型的训练带来重大挑战。 一方面,人工标注真实第一视角数据集,来培训深度学习模型的成本和难度都很高。另一…

第八章 shell编程之sed

目录 1.1. 概念 1.1.1. 工作原理: 1.2. 基本语法 1.2.1. 格式 1.2.2. 参数 1.2.3. 定址符 1.2.4. 操作 1.3. 输出文本 1.3.1. 范例文件: 1.3.2. 示例 1.4. 文本替换 1.4.1. 范例文件 1.4.2. 格式: 1.4.3. 示例 1.5. 删除文本 …

提升生产能力的必备工具——MES系统自动排产

在现代制造业中,生产能力的提升对企业发展至关重要。随着市场竞争的日益激烈,企业不仅需要提高产品质量,还需要提高生产效率。而MES系统自动排产作为一种先进的生产管理工具,可以帮助企业高效地安排生产,实现生产能力的…

江科大stm32学习笔记——【3-2】GPIO输出:LED闪烁LED流水灯蜂鸣器

(一) 硬件连接 1.LED闪烁 LED灯正极连接面包板电源正极,LED负极连接单片机A0口 (也可以LED负极连面包板负极,LED正极连接单片机A0口) 跳线连接单片机3.3和面包板正极,连接单片机GND和面包板负极 2.LED流水灯 3.蜂鸣…

你并不了解 JavaScript:入门 - 第二版 - 第二章:JS 概观

第二章:JS 概观 学习 JS 的最好方法就是开始写 JS。 要做到这一点,你需要知道这门语言是如何工作的,而这正是我们在这里要重点讨论的。即使你以前用过其他语言编程,也要慢慢适应 JS,并确保练习每一块。 这一章并不是…

自学黑客的这些坑千万别踩,不然就是在做无用功!

一、自学网络安全学习的误区和陷阱 1.不要试图先成为一名程序员(以编程为基础的学习)再开始学习 一般来说,学习编程不但学习周期长,而且实际向安全过渡后可用到的关键知识并不多 一般人如果想要把编程学好再开始学习网络安全往…

并发编程(3)JMM

5 共享模型之内存 本章内容 上一章讲解的 Monitor 主要关注的是访问共享变量时,保证临界区代码的原子性. 这一章我们进一步深入学习共享变量在多线程间的【可见性】问题与多条指令执行时的【有序性】问题 5.1 Java 内存模型 JMM 即 Java Memory Model&#xff…

SQL库操作

1、创建数据库 概念 创建数据库:根据项目需求创建一个存储数据的仓库 使用create database 数据库名字创建 数据库层面可以指定字符集:charset/character set 数据库层面可以指定校对集:collate 创建数据库会在磁盘指定存放处产生一个文件夹 创建语法 create …

六.生成makefile文件 并基于makefile文件编译opencv

1.点击【Generate】 生成makefile文件 2.进入目录下编译opencv源码,mingw32-make -j 8 3..编译出现报错 4.取消[WITH_OPENCL_D3D11_NV]选项,再次【configure】【generate】 然后再次编译:mingw32-make -j 8

【springblade】springblade(bladeX) 数据权限失效原因分析

文章目录 数据权限接口权限 前言:最近博主在按照bladeX官方文档 配置数据权限 结果发现失效了,网上搜了一下没找到合适的答案,本着求人不如求己的精神,自己调试了一下发现了问题所在,也大致看了一下bladeX的权限逻辑。…

这份攻略帮助你分分钟构建出“幻兽帕鲁游戏”极致体验【下】

在上一篇文章这份攻略帮助你分分钟构建出“幻兽帕鲁游戏”极致体验【上】中写了,极狐GitLab 将 terraform state 文件管理了起来。这篇文章将演示如何将所有的 terraform 文件存储到极狐GitLab 中,并且使用 CI/CD 自动实现 terraform 命令的执行。 在 D…

最简单方式把jar打包成Windows服务

废话 😢 将JAR文件转化为Windows服务是一种高效且常见的Java应用部署策略。这种转变赋予了Java应用程序在Windows操作系统上以无界面后台服务模式运行的能力,从而实现了持续、稳定且可靠的功能提供。这种部署方式不仅提升了应用的可用性&#xff0c…

re-迷宫题学习

re中的迷宫问题有以下特点: 在内存中布置一张 "地图"将用户输入限制在少数几个字符范围内.一般只有一个迷宫入口和一个迷宫出口 布置的地图可以由可显字符 (比如#和*)组合而成 (这非常明显, 查看字符串基本就知道这是个迷宫题了.), 也可以单纯用不可显的十六进制值进…

【鸿蒙 HarmonyOS 4.0】UIAbility、页面及组件的生命周期

一、背景 主要梳理下鸿蒙系统开发中常用的生命周期 二、UIAbility组件 UIAbility组件是一种包含UI界面的应用组件,主要用于和用户交互。 UIAbility组件是系统调度的基本单元,为应用提供绘制界面的窗口;一个UIAbility组件中可以通过多个页…

【大厂AI课学习笔记NO.50】2.3深度学习开发任务实例(3)任务背景与目标

我们经常在做项目的时候,觉得分析背景和目标是浪费时间,觉得不过如此。 其实目标梳理特别重要,直接决定你数据的需求分析,模型的选择,决定你交付的质量。 人工智能项目也和其他项目一样,不要想当然&#…