简 介: 本文对于桁架运动过程中对来自于压力传感器变换器输出的模拟信号进行采集,验证整个机械系统运动和信号采集处理方面的功能。

关键词运动桁架压力传感器ESP32

#mermaid-svg-PUpjXgDQiHdTEz2c .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .label text{fill:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .node rect,#mermaid-svg-PUpjXgDQiHdTEz2c .node circle,#mermaid-svg-PUpjXgDQiHdTEz2c .node ellipse,#mermaid-svg-PUpjXgDQiHdTEz2c .node polygon,#mermaid-svg-PUpjXgDQiHdTEz2c .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-PUpjXgDQiHdTEz2c .node .label{text-align:center;fill:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .node.clickable{cursor:pointer}#mermaid-svg-PUpjXgDQiHdTEz2c .arrowheadPath{fill:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-PUpjXgDQiHdTEz2c .flowchart-link{stroke:#333;fill:none}#mermaid-svg-PUpjXgDQiHdTEz2c .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-PUpjXgDQiHdTEz2c .edgeLabel rect{opacity:0.9}#mermaid-svg-PUpjXgDQiHdTEz2c .edgeLabel span{color:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-PUpjXgDQiHdTEz2c .cluster text{fill:#333}#mermaid-svg-PUpjXgDQiHdTEz2c div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-PUpjXgDQiHdTEz2c .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-PUpjXgDQiHdTEz2c text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-PUpjXgDQiHdTEz2c .actor-line{stroke:grey}#mermaid-svg-PUpjXgDQiHdTEz2c .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-PUpjXgDQiHdTEz2c #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .sequenceNumber{fill:#fff}#mermaid-svg-PUpjXgDQiHdTEz2c #sequencenumber{fill:#333}#mermaid-svg-PUpjXgDQiHdTEz2c #crosshead path{fill:#333;stroke:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .messageText{fill:#333;stroke:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-PUpjXgDQiHdTEz2c .labelText,#mermaid-svg-PUpjXgDQiHdTEz2c .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-PUpjXgDQiHdTEz2c .loopText,#mermaid-svg-PUpjXgDQiHdTEz2c .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-PUpjXgDQiHdTEz2c .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-PUpjXgDQiHdTEz2c .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-PUpjXgDQiHdTEz2c .noteText,#mermaid-svg-PUpjXgDQiHdTEz2c .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-PUpjXgDQiHdTEz2c .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-PUpjXgDQiHdTEz2c .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-PUpjXgDQiHdTEz2c .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-PUpjXgDQiHdTEz2c .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PUpjXgDQiHdTEz2c .section{stroke:none;opacity:0.2}#mermaid-svg-PUpjXgDQiHdTEz2c .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-PUpjXgDQiHdTEz2c .section2{fill:#fff400}#mermaid-svg-PUpjXgDQiHdTEz2c .section1,#mermaid-svg-PUpjXgDQiHdTEz2c .section3{fill:#fff;opacity:0.2}#mermaid-svg-PUpjXgDQiHdTEz2c .sectionTitle0{fill:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .sectionTitle1{fill:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .sectionTitle2{fill:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .sectionTitle3{fill:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PUpjXgDQiHdTEz2c .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-PUpjXgDQiHdTEz2c .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PUpjXgDQiHdTEz2c .grid path{stroke-width:0}#mermaid-svg-PUpjXgDQiHdTEz2c .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-PUpjXgDQiHdTEz2c .task{stroke-width:2}#mermaid-svg-PUpjXgDQiHdTEz2c .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PUpjXgDQiHdTEz2c .taskText:not([font-size]){font-size:11px}#mermaid-svg-PUpjXgDQiHdTEz2c .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PUpjXgDQiHdTEz2c .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-PUpjXgDQiHdTEz2c .task.clickable{cursor:pointer}#mermaid-svg-PUpjXgDQiHdTEz2c .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-PUpjXgDQiHdTEz2c .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-PUpjXgDQiHdTEz2c .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-PUpjXgDQiHdTEz2c .taskText0,#mermaid-svg-PUpjXgDQiHdTEz2c .taskText1,#mermaid-svg-PUpjXgDQiHdTEz2c .taskText2,#mermaid-svg-PUpjXgDQiHdTEz2c .taskText3{fill:#fff}#mermaid-svg-PUpjXgDQiHdTEz2c .task0,#mermaid-svg-PUpjXgDQiHdTEz2c .task1,#mermaid-svg-PUpjXgDQiHdTEz2c .task2,#mermaid-svg-PUpjXgDQiHdTEz2c .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-PUpjXgDQiHdTEz2c .taskTextOutside0,#mermaid-svg-PUpjXgDQiHdTEz2c .taskTextOutside2{fill:#000}#mermaid-svg-PUpjXgDQiHdTEz2c .taskTextOutside1,#mermaid-svg-PUpjXgDQiHdTEz2c .taskTextOutside3{fill:#000}#mermaid-svg-PUpjXgDQiHdTEz2c .active0,#mermaid-svg-PUpjXgDQiHdTEz2c .active1,#mermaid-svg-PUpjXgDQiHdTEz2c .active2,#mermaid-svg-PUpjXgDQiHdTEz2c .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-PUpjXgDQiHdTEz2c .activeText0,#mermaid-svg-PUpjXgDQiHdTEz2c .activeText1,#mermaid-svg-PUpjXgDQiHdTEz2c .activeText2,#mermaid-svg-PUpjXgDQiHdTEz2c .activeText3{fill:#000 !important}#mermaid-svg-PUpjXgDQiHdTEz2c .done0,#mermaid-svg-PUpjXgDQiHdTEz2c .done1,#mermaid-svg-PUpjXgDQiHdTEz2c .done2,#mermaid-svg-PUpjXgDQiHdTEz2c .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-PUpjXgDQiHdTEz2c .doneText0,#mermaid-svg-PUpjXgDQiHdTEz2c .doneText1,#mermaid-svg-PUpjXgDQiHdTEz2c .doneText2,#mermaid-svg-PUpjXgDQiHdTEz2c .doneText3{fill:#000 !important}#mermaid-svg-PUpjXgDQiHdTEz2c .crit0,#mermaid-svg-PUpjXgDQiHdTEz2c .crit1,#mermaid-svg-PUpjXgDQiHdTEz2c .crit2,#mermaid-svg-PUpjXgDQiHdTEz2c .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-PUpjXgDQiHdTEz2c .activeCrit0,#mermaid-svg-PUpjXgDQiHdTEz2c .activeCrit1,#mermaid-svg-PUpjXgDQiHdTEz2c .activeCrit2,#mermaid-svg-PUpjXgDQiHdTEz2c .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-PUpjXgDQiHdTEz2c .doneCrit0,#mermaid-svg-PUpjXgDQiHdTEz2c .doneCrit1,#mermaid-svg-PUpjXgDQiHdTEz2c .doneCrit2,#mermaid-svg-PUpjXgDQiHdTEz2c .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-PUpjXgDQiHdTEz2c .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-PUpjXgDQiHdTEz2c .milestoneText{font-style:italic}#mermaid-svg-PUpjXgDQiHdTEz2c .doneCritText0,#mermaid-svg-PUpjXgDQiHdTEz2c .doneCritText1,#mermaid-svg-PUpjXgDQiHdTEz2c .doneCritText2,#mermaid-svg-PUpjXgDQiHdTEz2c .doneCritText3{fill:#000 !important}#mermaid-svg-PUpjXgDQiHdTEz2c .activeCritText0,#mermaid-svg-PUpjXgDQiHdTEz2c .activeCritText1,#mermaid-svg-PUpjXgDQiHdTEz2c .activeCritText2,#mermaid-svg-PUpjXgDQiHdTEz2c .activeCritText3{fill:#000 !important}#mermaid-svg-PUpjXgDQiHdTEz2c .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PUpjXgDQiHdTEz2c g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-PUpjXgDQiHdTEz2c g.classGroup text .title{font-weight:bolder}#mermaid-svg-PUpjXgDQiHdTEz2c g.clickable{cursor:pointer}#mermaid-svg-PUpjXgDQiHdTEz2c g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-PUpjXgDQiHdTEz2c g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-PUpjXgDQiHdTEz2c .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-PUpjXgDQiHdTEz2c .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-PUpjXgDQiHdTEz2c .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-PUpjXgDQiHdTEz2c .dashed-line{stroke-dasharray:3}#mermaid-svg-PUpjXgDQiHdTEz2c #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-PUpjXgDQiHdTEz2c #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-PUpjXgDQiHdTEz2c #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-PUpjXgDQiHdTEz2c #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-PUpjXgDQiHdTEz2c #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-PUpjXgDQiHdTEz2c #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-PUpjXgDQiHdTEz2c #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-PUpjXgDQiHdTEz2c #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-PUpjXgDQiHdTEz2c .commit-id,#mermaid-svg-PUpjXgDQiHdTEz2c .commit-msg,#mermaid-svg-PUpjXgDQiHdTEz2c .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PUpjXgDQiHdTEz2c .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PUpjXgDQiHdTEz2c .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PUpjXgDQiHdTEz2c g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PUpjXgDQiHdTEz2c g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-PUpjXgDQiHdTEz2c g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-PUpjXgDQiHdTEz2c g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-PUpjXgDQiHdTEz2c g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-PUpjXgDQiHdTEz2c g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-PUpjXgDQiHdTEz2c .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-PUpjXgDQiHdTEz2c .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-PUpjXgDQiHdTEz2c .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-PUpjXgDQiHdTEz2c .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-PUpjXgDQiHdTEz2c .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-PUpjXgDQiHdTEz2c .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-PUpjXgDQiHdTEz2c .edgeLabel text{fill:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-PUpjXgDQiHdTEz2c .node circle.state-start{fill:black;stroke:black}#mermaid-svg-PUpjXgDQiHdTEz2c .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-PUpjXgDQiHdTEz2c #statediagram-barbEnd{fill:#9370db}#mermaid-svg-PUpjXgDQiHdTEz2c .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-PUpjXgDQiHdTEz2c .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-PUpjXgDQiHdTEz2c .statediagram-state .divider{stroke:#9370db}#mermaid-svg-PUpjXgDQiHdTEz2c .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-PUpjXgDQiHdTEz2c .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-PUpjXgDQiHdTEz2c .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-PUpjXgDQiHdTEz2c .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-PUpjXgDQiHdTEz2c .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-PUpjXgDQiHdTEz2c .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-PUpjXgDQiHdTEz2c .note-edge{stroke-dasharray:5}#mermaid-svg-PUpjXgDQiHdTEz2c .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-PUpjXgDQiHdTEz2c .error-icon{fill:#522}#mermaid-svg-PUpjXgDQiHdTEz2c .error-text{fill:#522;stroke:#522}#mermaid-svg-PUpjXgDQiHdTEz2c .edge-thickness-normal{stroke-width:2px}#mermaid-svg-PUpjXgDQiHdTEz2c .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-PUpjXgDQiHdTEz2c .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-PUpjXgDQiHdTEz2c .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-PUpjXgDQiHdTEz2c .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-PUpjXgDQiHdTEz2c .marker{fill:#333}#mermaid-svg-PUpjXgDQiHdTEz2c .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-PUpjXgDQiHdTEz2c {color: rgba(0, 0, 0, 0.75);font: ;}

信号采集
文章目录
信号控制与
采集平台
基本情况介绍
ESP32控制端口配置
无线远程调试
信号采集与滤波
软件
采集到的数据
信号分析
总 结

§01 信号采集


  在运动的桁架下的压力传感器经过MIK-BSQW信号变送之后便可以达到单片机信号采集的范围之内。
  前期的工作包括有:

  • 利用ESP32驱动控制步进电机驱动器:MS2806
  • 山社电机: SAMSR -外部接口测试
  • 压力传感器变送器读取数据测试:MIK-BSQW

1.1 信号控制与采集平台

1.1.1 基本情况介绍

  运动平台控制采用了ESP32平台,预置了MicroPython软件,可以通过WiFi进行远程程序下载与开发。相关的资料包括:

  • ESP32-S模块转接板设计与实现
  • 基于USR-WiFi模块的 ESP32,ESP8266 Thonny调试器
  • 利用WiFi模块实现MicroPython远程开发

1.1.2 ESP32控制端口配置

  下图为ESP32外部接口,具体参照 ESP32-S模块转接板设计与实现

▲ 图1.1 ESP32外部接口

(1)步进电机控制

  桁架运动驱动 SAMSR步进电机 uiys DM542完成驱动,控制整个桁架需要三个信号:

桁架控制信号:
步进脉冲PUL:GPIO2
运动方向DIR:IO17
机械位置SWITCH:IO16

▲ 图1.2 DM542步进电机驱动模块

(2)模拟信号采集

  来紫玉 压力传感器变送器MIK-BSQW 的模拟信号由ESP32的模拟端口采集。 ESP32 MicroPython 模拟采集端口 包括有Pin32 ~ 39。下面使用其中的GPIO36(转接板的PIN3(从左往右数))。根据 ESP32模块的MicroPython的基本实验 对ESP32 ADC的测试,可以看到 ESP32的ADC在输入信号 0 ~ 2.5V之内的输出呈现比较好的线性关系。使用 ADC.ATTN_6DB 对外部信号衰减后进行采集,输入电压范围是 0 ~ 2V。

1.1.3 无线远程调试

  通过WiFi模块进行无线远程编程控制,可以方便在实验室中完成运行桁架的控制与数据采集,降低控制引线布局、电源供给以及信号干扰。

  分别使用有人虚拟串口软件 将WiFi UDP的无线访问映射成串口,进而可以在Thonny软件中访问到该虚拟串口,完成软件开发。

▲ 图1.1.3 有人虚拟串口软件

▲ 图1.1.4 Thonny MicroPython 开发IDE环境

  经过测试,使用STM32Bootloader进行WiFi开发的时候出现下载程序困难。相比较而言,还是使用ThonnyWiFi开发MicroPython程序开发中表现良好。

1.2 信号采集与滤波

1.2.1 软件

  开辟了全局数组,对于每毫秒采集到的ADC进行存储。

from machine                import Pin,PWM,Timer,ADC
import timeled = Pin(5, Pin.OUT)pulse = Pin(2, Pin.OUT)
dir = Pin(17, Pin.OUT)
limit = Pin(16, Pin.IN)
pulse.on()
dir.on()adc = ADC(Pin(36))
adc.atten(ADC.ATTN_6DB)STEP_MOTOR_NUMBER = 0
TimerCount = 0
def timerISR(t):global STEP_MOTOR_NUMBERglobal pulse,dir,limit,led,TimerCountglobal adc,adcdim,adcpoint,adcnumTimerCount += 1if TimerCount >= 100:TimerCount = 0if led.value() > 0:led.off()else: led.on()if STEP_MOTOR_NUMBER == 0: returnif STEP_MOTOR_NUMBER > 0:dir.on()if limit.value() == 0:STEP_MOTOR_NUMBER = 0return;STEP_MOTOR_NUMBER -= 1pulse.off()pulse.on()elif STEP_MOTOR_NUMBER < 0:dir.off()pulse.off()pulse.on()STEP_MOTOR_NUMBER += 1if adcpoint < adcnum:adcdim[adcpoint] = adc.read()adcpoint += 1tim0 = Timer(0)
tim0.init(period=1, mode=Timer.PERIODIC, callback = timerISR)adcnum = 1024
adcdim = [0]*adcnum
adcpoint = 0
adcrefresh = 0while True:keys = input('Input:')if keys.replace('-', '').isdigit():number = int(keys)STEP_MOTOR_NUMBER = numberabspoint = 0abcrefresh = 1absnum = abs(number)while True:time.sleep_ms(100)if abcrefresh > 0:if adcpoint >= absnum or adcpoint >= adcnum:abcrefresh = 0print(adcdim[:absnum])print('\r\n')time.sleep_ms(200)

1.2.2 采集到的数据

  下图是进行压缩一本书的过程,采集所得到的压力传感器的数值。

▲ 图1.2.1 压缩一本书的过程

▲ 图1.2.2 采集到的数据

▲ 图1.2.3 采集的数据

▲ 图1.2.4 采集到的数据

1.2.3 信号分析

  在采集到的压力信号中,反映了桁架运动所产生的对于下层挤压物体的压力。

  在 采集到的信号中,出现了周期性的往下的尖脉冲,它的来源是什么?猜测有两个:

  • 一个是由桁架机械运动产生的固定的抖动;
  • 另外一个是外部周期电信号所产生的干扰。

  对于上述采集验证可以通过后期对比实验来加以区分。比如只是采集信号,不再输出步进电机的运动脉冲信号,可以判断该信号是否跟机械运动有关系。

※ 总  结 ※


  本文对于桁架运动过程中对来自于压力传感器变换器输出的模拟信号进行采集,验证整个机械系统运动和信号采集处理方面的功能。


■ 相关文献链接:

  • 利用ESP32驱动控制步进电机驱动器:MS2806
  • 山社电机: SAMSR -外部接口测试
  • 压力传感器变送器读取数据测试:MIK-BSQW
  • ESP32-S模块转接板设计与实现
  • 基于USR-WiFi模块的 ESP32,ESP8266 Thonny调试器
  • 利用WiFi模块实现MicroPython远程开发
  • ESP32 MicroPython 模拟采集端口
  • ESP32模块的MicroPython的基本实验

● 相关图表链接:

  • 图1.1 ESP32外部接口
  • 图1.2 DM542步进电机驱动模块
  • 图1.1.3 有人虚拟串口软件
  • 图1.1.4 Thonny MicroPython 开发IDE环境
  • 图1.2.1 压缩一本书的过程
  • 图1.2.2 采集到的数据
  • 图1.2.3 采集的数据
  • 图1.2.4 采集到的数据

运动桁架下压力信号采集与处理相关推荐

  1. 使用CNN-LSTM混合深度学习分类基于MUSE采集的运动想象EEG信号

    点击上面"脑机接口社区"关注我们 更多技术干货第一时间送达 脑机接口(BrainComputer Interfaces)技术是将人脑与外部设备建立起直接的通路,在智能助残.人机工程 ...

  2. PCIEx8接口FPGA处理DMA控制器高速信号采集卡

    PCIE702是北京青翼科技研发的一款基于PCIExpress总线架构的光纤网络硬件验证平台,该平台具有1个X8PCIe主机接口,1个RJ45千兆以太网口.1个RJ45百兆以太网口,2个RS485接口 ...

  3. 运动想象| EEG信号、共空间模式算法(CSP)

    摘要 作为一种特殊的人机交互模式,脑-机接口(brain-computer interface, BCI)技术成为了当前信息交互的研究热点.其中脑电信号(electroencephalography, ...

  4. 便携式心电监护仪——LabVIEW心电信号采集系统设计

    一.实验目的 1.加深对于普通仪表放大器的理解,同时也由此延伸到其它的放大器的理解: 2.学习.锻炼对于电子设计软件NI LabView2020的运用: 3.学习电子元器件的选择与替代. 二.实验器材 ...

  5. 新型汽车车速里程表信号采集与处理研究

    转自: http://www.gzweix.com/article/sort0253/sort0487/info-287379.html 新型汽车车速里程表信号采集与处理研究 来源:汽车电器  作者: ...

  6. 电话双音频拨码信号采集

    简 介: 使用计算机声卡对于旧式电话改造控制板发送的双音频信号进行采集.后期对采集到的的信号进行处理,判断是否出现信号波形出现错误. 关键词: DTFM,FFT,旧式电话 #mermaid-svg-g ...

  7. 扩展32KRAM的STC8H8K信号采集版

    简 介: 本文对于基于STC8H8K单片机外部扩展32KRAM,通过这种扩展可以实现对于外部的测试信号进行采集.后期给定的测试显示了这种扩展可以采集到32k字节的AD采集数据. 关键词: STC8H8 ...

  8. matlab编写信号采集程序,MATLAB语音信号采集课程设计

    MATLAB语音信号采集课程设计 数字信号处理 课程设计报告 课设题目:语音信号的采集与处理 学 院:信息科学与工程学院 专 业:电子信息工程 班 级:电子0903 姓 名: 学 号: 指导教师:张海 ...

  9. 系统是综合应用最新多媒体计算机技术,RM-6280C多道生理信号采集处理系统

    RM-6280C多道生理信号采集处理系统 产品简介:    该系列产品综合应用最新多媒体计算机技术,先进的电子技术和数字信号处理技术,基于现代生命科学及医学机能实验的要求,总结长期生命科学及医学实验教 ...

最新文章

  1. 接口文档-swagger-bootstrap
  2. numpy insert
  3. Sources for NFC/RFID inspection ( Soft Materials )
  4. 下如何画出频率瀑布图_用maftools一行代码画出瀑布图
  5. 长期支持对OpenJDK意味着什么?
  6. 网络交换机的作用有哪些?
  7. nginx header参数丢失_某Nginx后门分析与重现
  8. C语言(CED)如何用sort函数根据结构体里的某一属性进行排序
  9. 【离散数学】实验 编写一个简单的三人表决器
  10. vue2.0中ckeckbox(复选框)的使用心得,及对click事件和change的理解
  11. 学习逆向知识之用于游戏外挂的实现.第二讲,快速寻找植物大战僵尸阳光基址.以及动态基址跟静态基址的区别...
  12. diablo2oo2’s Universal Patcher 中文汉化绿色破解版下载
  13. 第一次开卡SSD硬盘成功,主控为SM2258XT(附软件)
  14. 用计算机进行废物回收,回收旧的显示器以进行废物利用
  15. 迅雷离线下载怎么使用?迅雷离线下载使用方法
  16. WorkPlus助力“深i企”打造移动数字化底座
  17. linux根目录不足,追加空间到根目录
  18. 笔记本电脑运行特别慢怎么解决
  19. 通俗说说DSP、SSP、RTB、DMP是什么
  20. 梅科尔工作室-徐锦航-鸿蒙笔记2

热门文章

  1. leetcode-34-在排序数组中查找元素的第一个和最后一个位置
  2. 新手搭建简洁的Express-React-Redux脚手架
  3. 巧用伪元素和伪类让我们的html结构更清晰合理
  4. http://blog.51cto.com/wutengfei/1917288
  5. Node.js-提供了四种形式的定时器
  6. JavaScript:Object.prototype.toString进行数据类型判定
  7. ASP.Net定时任务执行
  8. 【unity】简要分析yield及协同程序的用法
  9. eclipse里面M2_REPO引用(Maven2安装总结)
  10. Delphi - 我的代码之窗体移动