tag 标签: 压力传感器

相关帖子
相关博文
  • 2024-9-30 14:25
    80 次阅读|
    0 个评论
    01 概述 TM7711 是应用于电子秤低频测量的单通道模拟前端。 该器件可以接受直接来自传感器的低电平的输入信号,然后产生串行的数字输出。利用 Σ-Δ 转换技术实现了 24 位无丢失代码性能。通过选定的输入信号被送到一个基于模拟调制器的增益可编程专用前端。片内数字滤波器处理调制器的输出信号,通过通信口发命令可调节滤波器的截止点和输出更新速率,从而对数字滤波器的第一个陷波进行编程。TM7711 只需 2.6~5.5V 单电源供电。TM7711 是全差分模拟输入,带有一个基准输入。TM7711 是一款用于高精度电子秤系统的理想产品,由于采用特殊的结构确保器件具有极低功耗,并且内建有掉电模式以减少待机功耗。 该芯片还具有集成度高、响应速度快、抗干扰强等优点,可以大大降低电子秤系统的整机成本,提高整机系统的性能和可靠性。 02 功能特点 1对全差分输入通道的 ADC 片内直接温度测量和数字输出 24 位无丢失代码 片内低噪声放大器,增益为 128 ±0.001%非线性 可选 10Hz 和 40Hz 的输出数据速率 同步抑制 50Hz 和 60Hz 的电源干扰 内置时钟振荡器无需任何外接器件 简单的二线串行通信口 工作电压范围:2.6 ~ 5.5V 工作温度范围:-40 ~ +85℃ 封装形式:SOP8 /DIP8 /TSSOP8 03 典型应用 04 管脚信息 05 串口通信 串口通讯线由管脚 PD_SCK 和 DOUT 组成,用来输出数据,选择输出数据速率和输入信号。当数据输出管脚 DOUT 为高电平时,表明 A/D 转换器还未准备好输出数据,此时串口时钟输入信号 PD_SCK 应为低电平。当 DOUT 从高电平变低电平后,PD_SCK 应输入 25 至 27 个不等的时钟脉冲(图 3)。其中第一个时钟脉冲的上升沿将读出输出 24 位数据的最高位(MSB),直至第 24 个时钟脉冲完成,24 位输出数据从最高位至最低位逐位输出完成。第 25 至 27 个时钟脉冲用来选择下一次 A/D 转换的输出数据速率和输入信号,参见表 4。PD_SCK 的输入时钟脉冲数不应少于 25 或多于27,否则会造成串口通讯错误。当 A/D 转换器的输入信号或输出数据速率改变时,A/D 转换器需要 4 个数据输出周期才能稳定。DOUT 在 4 个数据输出周期后才会从高电平变低电平,输出有效数据。 06 组件的使用 1 Gitee链接地址 Demo位于amaziot_bloom_os_sdk\sample\3rd\3.1_SSD1315 Gitee源码地址:https://gitee.com/ning./hongdou Github源码地址:https://github.com/ayumid/hongdou 编译指令:.\build.bat -l .\amaziot_bloom_os_sdk\sample\3rd\3.1_SSD1315 2 组件功能介绍 驱动称重芯片,获取当前重量对应的ADC值。 根据二元一次方程(y为砝码重量,x为adc值)y = ax + b可以计算出a,b的值。之后可以根据a,b,adc的值来计算y值。 3 代码讲解 1 drv_tm7711_get_weight_value 功能:该函数用于,获取重量。 参数: 参数 释义 k 二元一次方程,在坐标系中斜线的斜率 b 二元一次返程,在坐标系中和Y轴交点到原点的距离 返回值:无 示例: C //显示图片,注意参数和实际点阵大小一致 drv_ssd1315_show_picture(0,12,132,37,BMP1,1); 2 drv_ssd1315_scroll_display 功能:该函数用于,滚动显示汉字。 参数: 参数 释义 num 显示汉字的个数 space 每一遍显示的间隔 mode 0,反色显示;1,正常显示 返回值:无 示例: C drv_tm7711_get_weight_value(0.26483, 0.69879); 3 drv_tm7711_get_val 功能:该函数用于,获取tm7711采样值。 参数: 参数 释义 uc_next 选择下一次A/D 转换的输出数据速率和输入信号 data 获取的传感器数据 返回值:无 示例: C temp = drv_tm7711_read_data(uc_next); 4 drv_tm7711_read_data 功能:该函数用于,显示数字。 参数: 参数 释义 uc_next 选择下一次A/D 转换的输出数据速率和输入信号 25 差分信号 10Hz 26 温度测量 40Hz 27 差分信号 40Hz 返回值:无 示例: C 5 drv_tm7711_dout_pin_init 功能:该函数用于,模拟i2c,初始化SDA引脚为输入。 参数:无 返回值:无 示例: C drv_tm7711_dout_pin_init(); 6 drv_tm7711_pdsck_pin_init 功能:该函数用于,模拟i2c,初始化SCL引脚为输出。 参数: 返回值:无 示例: C drv_tm7711_pdsck_pin_init(); 4 Demo实战 4.1 创建一个Demo 复制20.1_file_xtu示例工程,到同一个文件夹下,修改文件名为4.0_TM7711,如图: 4.2 修改makefile 增加文件组件所在目录头文件路径,和源文件路径,如图: 4.3 增加头文件 使用代码编辑器,将新建的工程文件加入代码编辑器中,打开main.c,修改main.c,加入am.h等头文件,如图: 4.4 修改代码 在Phase2Inits_exit 创建一个任务,如图: 4.5 宏定义介绍 sample_sc7a20_uart_printf 输出日志到DEBUG 串口,日志比较少,可以输出到这个串口,如果日志比较多,需要输出到usb口,以免不必要的问题出现 sample_sc7a20_catstudio_printf 输出日志到USB 串口,使用catstudio查看,catstudio查看日志需要更新对应版本mdb.txt文件,软件打开filtter过滤日志,只查看用户输出的日志 SAMPLE_SC7A20_STACK_SIZE 栈空间宏定义 4.6 全局变量介绍 sample_sc7a20_int_detect_stack_ptr 任务栈空间,本例使用数组实现,用户在做项目时,可以预先估算下当先任务需要的大致栈空间,OS没有提供可以查看栈空间使用情况的API sample_sc7a20_int_detect_task_ref 任务指针 4.7 函数介绍 Phase1Inits_enter 底层初始化,本例空 Phase1Inits_exit 底层初始化,本例空 Phase2Inits_enter 底层初始化,本例空 Phase2Inits_exit 创建主任务,初始化消息队列,定时器,任务等。 代码片段: C void Phase2Inits_exit(void) { int ret = 0; // GPIOConfiguration config = {0}; //创建定时器 // OSATimerCreate(&sample_sc7a20_int_detect_timer_ref); //创建中断事件 // OSAFlagCreate( &sample_sc7a20_int_detect_flg_ref); // Os_Create_HISR(&sample_sc7a20_int_detect_hisr, "sample_sc7a20_int_detect_hisr", sample_sc7a20_detect_handler, 2); //创建中断处理任务 OSATaskCreate(&sample_sc7a20_int_detect_task_ref, sample_sc7a20_int_detect_stack_ptr, SAMPLE_SC7A20_STACK_SIZE, 100, "detect_task", sample_sc7a20_detect_task, NULL); //初始化int引脚,这里使用70脚 gpio126 // config.pinDir = GPIO_IN_PIN; // config.pinEd = GPIO_TWO_EDGE; // config.pinPull = GPIO_PULLUP_ENABLE; // config.isr = sample_sc7a20_irq_handler; // GpioInitConfiguration(SAMPLE_GPIO_ISR_PIN_NUM, config); } sample_sc7a20_detect_task 主任务,获取称重信息,需要手动根据砝码计算出k和b的值,然后才可以调用drv_tm7711_get_weight_value,计算出实际重量,每一个传感器所在pcb状态可能不一致,所以每一台设备,k和b的值都需要校准。 代码片段: C void sample_sc7a20_detect_task(void *param) { INT32 data = 0; int ret = 0; drv_tm7711_dout_pin_init(); drv_tm7711_pdsck_pin_init(); while(1) { ret = drv_tm7711_get_val(DRV_TM7711_CH1_10HZ, &data); // drv_tm7711_get_weight_value(0.15485, 0.416548615); sample_sc7a20_catstudio_printf(" tm7711 data: 0x%x", data); sample_sc7a20_sleep(1); } } 4.8 编译 在SDK根目录打开命令行,输入命令.\build.bat -l .\amaziot_bloom_os_sdk\sample\3rd\4.0_TM7711\ C++ PS F:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF λ .\build.bat -l .\amaziot_bloom_os_sdk\sample\3rd\4.0_TM7711\ 子目录或文件 out\bin 已经存在。 命令语法不正确。 子目录或文件 build\obj 已经存在。 gnumake: Entering directory `F:/3.asr-b/cat.1-asr1606/1.software/BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF/amaziot_bloom_os_sdk/sample/3rd/4.0_TM7711' armcc.exe -c --cpu Cortex-R4 --no_unaligned_access -g -O2 --apcs /inter --diag_suppress 2084,1,2,177,188,223,550,1296,2795,6319,9931,9933 --diag_error=warning --gnu --thumb --loose_implicit_cast -DDATA_COLLECTOR_IMPL -DISPT_OVER_SSP -DDIAG_SSP_DOUBLE_BUFFER_USE_DYNAMIC_ALLOCATION -DENV_XSCALE -DL1_DCXO_ENABLED -DLTE_HIGH_MOBILITY_OPTIMIZATION -DRUN_XIP_MODE -DCRANE_Z2 -DCA_LONG_IPC_MSG -DNEZHA3 -DNEZHA3_1826 -DUPGRADE_PLMS -DUPGRADE_PLMS_SR -DLTE_GSMMULTIBCCH -DGPLC_LTE_RSSI_SCAN -DL1V_NEW_RSSI -DUPGRADE_PLMS_3G -DUPGRADE_PLMS_L1 -DUPGRADE_FG_PLMS -DFG_PLMS_URR -DUPGRADE_L1A_FG_PLMS -DUPGRADE_PLMS_STAGE_2 -DUPGRADE_MBCCH -DMULTI_BCCH_READY_IND -DURR_MRAT_ICS_SEARCH -DUPGRADE_ICS -DMRAT_NAS -DUPGRADE_PLMS_SEARCH_API -DICS_MBCCH -DICS_MBCCH_2G_RSSI -DDIAG_NEWPP -DPHS_SW_DEMO -DPHS_SW_DEMO_TTC -DPHS_SW_DEMO_TTC_PM -DFULL_SYSTEM -D_DDR_INIT_ -D_TAVOR_HARBELL_ -DUPGRADE_ARBEL_PLATFORM -D_TAVOR_B0_SILICON_ -DTDL1C_SPY_ENABLE -DDLM_TAVOR -DTAVOR -DFLAVOR_DUALCORE -DDEBUG_D2_MOR_REG_RESEREVED_ENABLE -D_DIAG_USE_COMMSTACK_ -D_TAVOR_DIAG_ -DPM_DEBUG_MODE_ENABLED -DPM_D2FULL_MODE -DPM_EXT_DBG_INT_ARR -DFEATURE_WB_AMR_PS -DMACRO_FOR_LWG -DHL_LWG -DOPTIMIZE_FOR_2G_BCCH -DPLAT_TEST -D_FDI_USE_OSA_ -DPLAT_USE_THREADX -DLWIP_IPNETBUF_SUPPORT -DCRANE_MCU_DONGLE -DAT_OVER_UART -DPHS_SW_DEMO_TTC_PM -DUPGRADE_LTE_ONLY -DEXT_AT_MODEM_SUPPORT -DLTEONLY_THIN_SINGLE_SIM -DLFS_FILE_SYS -DLFS_FILE_SYS_V2 -DPSM_ENABLE -DNO_PAHO_MQTT -DNO_XML -DNO_LWM2M -DREMOVE_MBEDTLS -DNO_AT_NET -DCRANE_SD_NOT_SUPPORT -DNTP -DYMODEM_EEH_DUMP -DENABLE_DM_LTEONLY -DLTEONLY_THIN -DNO_EXTEND_MY_Q_AT -DNOT_SUPPORT_HTTPS -DNOT_SUPPORT_PM813 -DCRANEL_4MRAM -DREMOVE_PB -DUART_NEW_VERSION -DREMOVE_MEP -DREMOVE_SMS -DREMOVE_ENVSIM -DAPN_INCODE -DLTEONLY_THIN_SINGLE_SIM_2MFLASH -DASR160X_OPENCPU_FEATURE -DENABLE_UART3_FEATRUE -DENABLE_UART4_FEATRUE -DYUGE_MBEDTLS_3_2_1 -DENABLE_MAC_TX_DATA_LOGGING -DDISABLE_NVRAM_ACCESS -DINTEL_UPGRADE_EE_HANDLER_SUPPORT -DLTE_W_PS -DL1_DUAL_MODE -DUPGRADE_HERMON_DUAL -DINTEL_UPGRADE_DUAL_RAT -DINTEL_UPGRADE_GPRS_CIPHER_FLUSH -DUPGRADE_ENHANCED_QUAD_BAND -DINTEL_2CHIP_PLAT -DI_2CHIP_PLAT -DUPGRDE_TAVOR_COMMUNICATION -DRUN_WIRELESS_MODEM -DFLAVOR_DDR12MB_GB1MB5 -DFEATURE_SHMEM -DACIPC_ENABLE_NEW_CALLBACK_MECHANISM -DRELIABLE_DATA -DMAP_NSS -DTV_FNAME="\"SW_PLATFORM=PMD2NONE PHS_SW_DEMO PHS_SW_DEMO_PM SRCNUCLEUS FULL_SYSTEM NOACRTC PDFLT PLAT_TEST PV2 DIAGOSHMEM NVM WITHL1V\"" -DTV_FDESC="\"SW_DESCRIPTION=\"" -DENABLE_ACIPC -D_DATAOMSL_ENABLED_ -DUSB_CABLE_DETECTION_VIA_PMIC -DMIPS_TEST -DMIPS_TEST_RAM -DFLAVOR_DIET_RAM -DNVM_INCLUDE -DMSL_INCLUDE -DMSL_POOL_MEM -DNO_AUDIO -DOSA_QUEUE_NAMES -D_DIAG_DISABLE_USB_ -DOSA_NUCLEUS -DOSA_USED -DPM_D2NONE_MODE -DCRANE_SOC_TEMPERATURE_SENSOR -DL1_SW_UPDATE_FOR_DIGRF -DPHS_L1_SW_UPDATE_R7 -DUPGRADE_LTE -DFRBD_CALIB_NVM -DFRBD_AGC_CALIB -DFRBD_FDT_CALIB -DHSPA_MPR -DCAPT_PARAMS_OPTIMIZE -DL1_WB_R99_ONLY -DL1V_WB_R99_ONLY -DINTERGRATED_RF_SUPPORT -DL1_RX_DIV_SUPPORT -DENABLE_OOS_HANDLING -DTAVOR_D2_WB_L1_SUPPORT -DL1_DDR_HIGH_FREQ -DUPGRADE_DIGRF3G_SUPPORT -DW_PS_PLUS_G_PAGING -D"NO_APLP=0" -DINTEL_UPGRADE_UNIFIED_VOICE_TASK -DINTEL_UPGRADE_R99 -DAPLP_SPY_ENABLE -D__TARGET_FEATURE_DOUBLEWORD -DWHOLE_UMTS_STACK -DUSE_TTPCOM_CSR_BLUETOOTH_AUDIO_GAIN_CONTROL -DL1_UPGRADE_R5 -DUPGRADE_EDGE -DUPGRADE_R4_FS1 -DINTEL_UPGRADE_GSM_CRL_IF -DUPGRADE_EGPRS_M -DINTEL_UPGRADE_EGPRS_M -DINTEL_UPGRADE_RF_PARAMS_IN_CF_TDS -DINTEL_UPGRADE_2SAMPLES_PER_SYMBOL -D"GPRS_MULTISLOT_CLASS=12" -D"EGPRS_MULTISLOT_CLASS=12" -DMARVELL_UPGRADE_BSIC_REDESIGN -DMSL_INCLUDE -DINTEL_HERMON_SAC -DCRANE_CUST_BUILD -DL1_SW_UPDATE_FOR_DIGRF -DFLAVOR_COM -DSILICON_PV2 -DSILICON_SEAGULL -DSILICON_TTC_CORE_SEAGULL -DPCAC_INCLUDE -Otime -DBUILD_DATE="\"06 14 2024\"" -DBUILD_TIME="\" 9:48:26\"" -Iatcmds\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\telephony\yuge\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hal\UART\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hal\core\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hal\PMU\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hal\GPIO\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\os\posix\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\diag\diag_logic\src -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\csw\SysCfg\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\csw\platform\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\env\win32\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\csw\BSP\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\csw\platform\dev_plat\build -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\os\osa\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\os\threadx\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\os\nu_xscale\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\psm\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\httpclient\src -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\diag\diag_logic\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\timer\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\intc\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\csw\PM\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\pm\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\softutil\TickManager\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\BSP\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\telephony\atcmdsrv\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\telephony\atparser\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\telephony\sdk\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\httpclient\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\ci\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\lwipv4v6\src\include -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\lwipv4v6\src\include\arch -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\lwipv4v6\src\include\ipv4 -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\lwipv4v6\src\include\ipv6 -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\lwipv4v6\src\include\lwip -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\lwipv4v6\src\include\netif -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\mmi_mat\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\tavor\Arbel\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\tavor\env\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\telephony\modem\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\duster\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\fota\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hal\I2C\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hal\ACIPC\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\softutil\fatsys\flash -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\softutil\FDI\src\INCLUDE -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hal\MMU\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\softutil\FDI\src\FDI_ADD -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\softutil\FDI\src\FM_INC -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\softutil\fatsys\fs\hdr -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\softutil\littlefs\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\tts\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\dial\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\softutil\csw_memory\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\utilities\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\commpm\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\softutil\nvm\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\softutil\EEhandler\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\softutil\EEhandler\src -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\RTC\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\telephony\ci_client\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hal\BT_device\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hal\UART\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\mrd\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\dma\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\softutil\softutil\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hal\SPI\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\websocket\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\atnet_srv\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\softutil\fotacomm\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\aud_sw\Audio\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\aud_sw\ACM_COMM\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\aud_sw\audio_stub\src -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hop\aam\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\aud_sw\AudioHAL\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\hal\dbgshell\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\include\asr160x\pcac\opencpu\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\amaziot_bloom_os_sdk\utils -IF:/3.asr-b/cat.1-asr1606/1.software/BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF/amaziot_bloom_os_sdk/sample/3rd/4.0_TM7711\am\inc -IF:/3.asr-b/cat.1-asr1606/1.software/BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF/amaziot_bloom_os_sdk/sample/3rd/4.0_TM7711\atcmds\inc -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\amaziot_bloom_os_sdk\3rd_drives -IF:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\amaziot_bloom_os_sdk\3rd_drives\TM7711 -o build\obj/ext_at_cmds.o F:/3.asr-b/cat.1-asr1606/1.software/BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF/amaziot_bloom_os_sdk/sample/3rd/4.0_TM7711/atcmds/src/ext_at_cmds.c armlink.exe build\obj/main.o build\obj/ext_at_cmds.o build\obj/ext_at_controller.o build\obj/drv_tm7711.o \ -o F:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\out\bin\Arbel_PMD2NONE_40M.axf \ --via F:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\prebuilt_1606l\Arbel_PMD2NONE_targ_objliblist.txt \ --elf \ --scatter F:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\prebuilt_1606l\Crane_DS_4M_Ram_2M_Flash_XIP_CIPSRAM_Common_SingleSIM.sct \ --predefine="-DLTEONLY_THIN_SINGLE_SIM" --map --symbols --info sizes,totals \ --list F:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\out\bin\Arbel_PMD2NONE_40M.map \ --keep init.o(Header) --keep init.o(Vectors) --diag_suppress 6312,6314,6319,6329 \ --feedback F:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\out\feedbackLinkOptLteonlyThin_SingleSim_NoSMS.txt F:\3.asr-b\cat.1-asr1606\1.software\BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF\tools\buildimage_1606l.bat SDK_PROD_TYPE : SDK_CUST_SKU : SDK_PS_MODE : SDK_CHIP_VER : SDK_OS_TYPE : Platform Convertion Tools v4.01 with PS option extension Convertion done! |INPUT |out\bin\cp_1606L.bin |MARK |NAME |EXEADDR .LOADADDR.LENGTH .CPZLADDR|COMPRESS STASTIC | |--------|--------|--------.--------.--------.--------|------------------------------| |This Is LteOnly 4M| 00003000 |This Is LteOnly 4M| 00001000 |This Is LteOnly 4M| 0000a000 |This Is LteOnly 4M| 0001e000 |This Is LteOnly 4M| 0001b000 |This Is LteOnly 4M| 0001b000 |This Is LteOnly 4M| 0001a000 |This Is LteOnly 4M| 0001a000 |This Is LteOnly 4M| 00011000 |This Is LteOnly 4M| 0001e000 |This Is LteOnly 4M| 00021000 |This Is LteOnly 4M| 00011000 |--------|--------|--------.--------.--------.--------|------------------------------| 0x00145000| 1.270(MB)| |------------------------------------------------------------------------------------| cp_1606L.axf cp_1606L.bin cp_1606L.map gnumake: Leaving directory `F:/3.asr-b/cat.1-asr1606/1.software/BlOOM_OS_1606_OPENCPU_1191_A09_WIHT_NEWRF/amaziot_bloom_os_sdk/sample/3rd/4.0_TM7711' "copy NEZHAC_CP_CNR_MIFI_TX.bin to ./ " 已复制 1 个文件。 4.9 生成固件 参考入门中开发工具,生成工具。 4.10 测试 测试步骤: 参考编译教程,和文档开头的编译指令,进行编译 按照编译教程选择对应的选项 烧录 4.11 固件 上电后,串口会打印出当前采集到的芯片数值,数值(x)和标准砝码(y)之间符合y=kx+b线性公式,测试出k和b的值,就可以计算出y; 注:本文部分内容来源于网络,如有侵权,请及时联系我们。 本文章源自奇迹物联开源的物联网应用知识库Cellular IoT Wiki,更多技术干货欢迎关注收藏Wiki: Cellular IoT Wiki 知识库(https://rckrv97mzx.feishu.cn/wiki/wikcnBvAC9WOkEYG5CLqGwm6PHf)
  • 2024-9-26 15:00
    111 次阅读|
    0 个评论
    01 物联网系统中为什么要使用压力传感器 物联网系统中使用压力传感器的原因主要基于其多方面的优势和应用价值。以下是对此问题的详细分析: 压力传感器的性能特点 高精度:压力传感器能够准确地将压力信号转换为可测量的电信号,提供高精度的压力数据,这对于物联网系统中需要精确控制或监测压力变化的场景至关重要。 实时性强:压力传感器能够实时监测压力变化,并将数据迅速传输到物联网系统中,使得系统能够及时响应和处理。 稳定性好:现代压力传感器采用先进的材料和工艺制造,具有良好的稳定性和可靠性,能够在各种恶劣环境下长期稳定运行。 智能化程度高:随着物联网技术的发展,压力传感器已经具备了智能化监测和预警的功能,能够自动判断压力是否超出正常范围,并发出警报,提高系统的安全性和可靠性。 压力传感器在物联网系统中的应用价值 工业监测与控制:在工业领域,压力传感器被广泛应用于管道、容器、机器设备等压力参数的监测和控制,确保生产过程的稳定性和安全性。通过与物联网技术相结合,可以实现远程监控和智能化控制,提高生产效率和降低人力成本。 汽车安全监测:在汽车领域,压力传感器被用于轮胎压力监测、发动机机油压力监测等,确保汽车的安全性和性能。例如,胎压监测系统(TPMS)能够在胎压过低时向驾驶员发出警报,防止因胎压不足导致的交通事故。 医疗健康监测:在医疗领域,压力传感器被用于血压监测、呼吸机压力监测等,为医疗诊断和治疗提供重要数据支持。通过与物联网技术相结合,可以实现远程医疗和健康管理,提高医疗服务的质量和效率。 环境监测与预警:在环境监测领域,压力传感器可以用于气压、水压等参数的监测和预警。例如,在气象观测中,气压传感器可以实时监测大气压力变化,为天气预报提供重要数据支持。 智能家居与安防:在智能家居和安防领域,压力传感器可用于检测门窗的开关状态、水管压力等,实现智能化控制和安全预警。例如,当水管压力异常时,压力传感器可以发出警报,防止水管破裂等事故的发生。 综上所述,物联网系统中使用压力传感器的原因在于其高精度、实时性强、稳定性好、智能化程度高等性能特点以及广泛的应用价值。压力传感器在物联网系统中发挥着重要作用,为各种应用场景提供了可靠的压力数据支持,推动了物联网技术的发展和应用。 本文会再为大家详解传感器家族中的一员——压力传感器 . 02 压力传感器的定义 压力传感器 (Pressure Transducer) 是能感受压力信号,并能按照一定的规律将压力信号转换成可用的输出的电信号的器件或装置。 03 压力传感器分类 压力传感器分为: 1、压阻式压力传感器 压阻式传感器是利用半导体材料的压阻效应而制成的一种纯电阻性元件。它主要有三种类型:体型、薄膜型和扩散型。 1)体型压阻传感器 利用半导体材料电阻制成粘贴式的应变片(半导体应变片),用此应变片制成的传感器称为半导体应变式传感器,其工作原理是基于半导体材料的压阻效应。这是一种将半导体材料硅或锗晶体按一定方向切割成的片状小条,经腐蚀压焊粘贴在基片上而成的应变片,其结构如图。 2)薄膜型压阻传感器 薄膜型压阻传感器是利用真空沉积技术将半导体材料沉积在带有绝缘层的试件上而制成的,结构如图。 3)扩散型压阻传感器 扩散型压阻传感器是在半导体材料的基片上利用集成电路工艺制成扩散电阻。将P型杂质扩散到N型硅单晶基底上,形成一层极薄的P型导电层,再通过超声波和热压焊法接上引出线就形成了扩散型半导体应变片。 它是一种应用很广的半导体应变片。扩散型压阻传感器的基片是半导体单晶硅。 压阻式传感器的工作原理 压阻式传感器是用半导体材料制成的,其工作原理是基于半导体材料的压阻效应,当半导体应变片受轴向力作用时,其电阻率 发生变化。其电阻相对变化为: 用应变片测量应变或应力时,在外力作用下,被测对象产生微小机械变形,应变片随着发生相同的变化,同时应变片电阻值也发生相应变化。半导体应变片与金属应变片相比,最突出的优点是它的体积小而灵敏度高。 温度误差及补偿 由于半导体材料对温度很敏感,压阻式传感器的电阻值及灵敏度系数随温度变化而发生变化,引起的温度误差分别为零漂和灵敏度温漂。压阻式传感器一般在半导体基片上扩散四个电阻,当四个扩散电阻的阻值相等或相差不大、电阻温度系数也相同时,其零漂和灵敏度温漂都会很小,但工艺上难以实现。由于温度误差较大,压阻式传感器一般都要进行温度补偿。 应用场景 利用半导体压阻效应,可设计成多种类型的压阻式传感器。压阻式传感器体积小,结构比较简单,灵敏度高,能测量十几微帕的微压,动态响应好,长期稳定性好,滞后和蠕变小,频率响应高,便于生产,成本低。因此,它在测量压力、压差、液位物位、加速度和流量等方面得到了普遍应用。 1)压力测量 硅压阻式压力传感器由外壳、硅膜片(硅杯)和引线等组成。 2)液位测量 它是根据液面高度与液压成比例的原理工作的。投入式液位传感器安装方便,可适应于深度为几米至几十米,且混有大量污物、杂质的水或其他液体的液位测量。 3)加速度测量 它的悬臂梁直接用单晶硅制成,在悬臂梁的根部扩散四个阻值相同的电阻,构成差动全桥。在悬臂梁的自由端装一质量块,当传感器受到加速度作用时,由于惯性,质量块使悬臂梁发生形变而产生应力,该应力使扩散电阻的阻值发生变化,由电桥的输出信号可获得加速度的大小。 2、压电压力传感器 压电压力传感器使用石英晶体或陶瓷材料在施加压力时产生电荷。这种以电压测量的电荷与压力的变化成正比。压电压力传感器非常灵敏且响应速度极快。压电压力传感器组件的截面图:螺母 (A)、外壳 (B)、晶体 (C)、隔膜 (D)、引线 (E) 和圆盘 (F) 特点 灵敏度高:压电式传感器的灵敏度可以达到很高,能非常准确地测量出小到微米级别的形变。 可靠性好:压电器件具有高强度、高刚性、高可靠性的特点,能在恶劣的工业环境中稳定运行。 易于安装和使用:压电传感器为非接触式传感器,安全可靠,使用和维护也比较简单方便。 应用场景 工业自动化:压电式传感器广泛应用于工业自动化控制中,如机器人、自动化生产线等领域,可以用于测量出产品的重量、长度、宽度等参数。 医疗设备:在医疗设备领域,压电传感器常用于医疗器械的重量测量和体温测量等方面。 环境监测:在环境监测领域,压电传感器可用于测量大气压力、水深、土壤含水量、风速等方面。 电子秤 其它称重领域 3、电容式压力传感器: 电容式压力传感器使用膜片,膜片被施加的压力偏转,从而导致电容值的变化,然后可以校准,以提供压力读数。 根据应用,该传感器可以测量绝压、表压或差压。电容压力传感器组件:绝缘支架 (A)、隔膜 (B)、电容器板(C) 和压力端口 (D) 应用场景 电容式压力传感器主要用于测量液体或气体的压力,当液体或气体压力作用于弹性膜片安弹性膜片产生位移,位移导致电容量的变化,从而引起由该电容组成的振荡器的振荡频率变化,频率信号经计数、码、传输到显示部分,即可指示压力变化量。目前,电容式压力传感器已被广泛的使用在工业生产中。 4、应变式压力传感器 应变式压力传感器是一种通过测量各种弹性元件的应变来间接测量压力的传感器。根据制作材料的不同,应变元件可以分为金属和半导体两大类。 原理: 应变元件的工作原理基于导体和半导体的“应变效应”,即当导体和半导体材料发生机械变形时,其电阻值将发生变化。当金属丝受外力作用时,其长度和截面积都会发生变化,其电阻值即会发生改变,假如金属丝受外力作用而伸长时,其长度增加,而截面积减少,电阻值便会增大。当金属丝受外力作用而压缩时,长度减小而截面增加,电阻值则会减小。只要测出加在电阻两端的电压的变化,即可获得应变金属丝的应变情况。 应用场景 汽车制造 在汽车制造领域中,应变式传感器被广泛应用于汽车底盘、车身及零部件的设计和测试中。通过对汽车底盘结构变形情况的监测,可以全面评估汽车的悬挂系统性能、驾驶稳定性和安全性能,该技术已成为现代汽车制造领域普遍使用的技术手段。 航天航空 在航天航空领域,应变式传感器主要用于机身变形监测、飞行器的力学与弹性分析等方面。由于航天器长期处于复杂多变的空间环境中,强烈的颠簸和振动会给机体带来很大压力,导致机体损伤,该传感器能够对此进行准确测量,为航天航空技术研究和应用提供了可靠的数据支持。 建筑结构安全监测 在建筑结构安全监测方面,应变式传感器也具有广泛的应用。建筑结构受到风、地震等外力作用时,会发生不同程度的变形,如果超过了一定的范围,就会引发安全隐患。应变式传感器可以实时监控建筑的变形情况,及时预警不安全情况,为城市中大型建筑的安全提供可靠保障。 5、电磁压力传感器 电磁压力传感器是多种利用电磁原理的传感器统称,主要包括 电感压力传感器、霍尔压力传感器、电涡流压力传感器 等。 电感式压力传感器的工作原理是由于磁性材料和磁导率不同,当压力作用于膜片时,气隙大小发生改变,气隙的改变影响线圈电感的变化,处理电路可以把这个电感的变化转化成相应的信号输出,从而达到测量压力的目的。该种压力传感器按磁路变化可以分为两种:变磁阻和变磁导。 电感压力传感器优缺点 电感式压力传感器的优点在于灵敏度高、测量范围大;缺点就是不能应用于高频动态环境。 变磁阻式压力传感器 变磁阻式压力传感器主要部件是铁芯跟膜片。它们跟之间的气隙形成了一个磁路。当有压力作用时,气隙大小改变,即磁阻发生了变化。如果在铁芯线圈上加一定的电压,电流会随着气隙的变化而变化,从而测出压力。 在磁通密度高的场合,铁磁材料的导磁率不稳定,这种情况下可以采用变磁导式压力传感器测量。变磁导式压力传感器用一个可移动的磁性元件代替铁芯,压力的变化导致磁性元件的移动,从而磁导率发生改变,由此得出压力值。 应用场景 液位监控:可变磁阻传感器可通过磁芯的位置和移动状态来检测液位高度的变化,进而控制液体的排放和加注等措施。 机器人控制:机器人运动状态的控制和调整需要对其关节的位置和运动状态进行实时检测和追踪。可变磁阻传感器可以配合机器人关节的位置和速度计算来实现角度的测量,进而进行位置控制和反馈。 流量监测:在流量控制领域,可变磁阻传感器可以用于检测液体、气体和粉状物等的流量,不仅可以掌握流量大小、功率消耗和效能信息,还可以通过控制流媒体的进出口来调节输出。 汽车辆速度监测:车辆的传统速度监测设备常常受到道路、车轮滑动等复杂环境的干扰。相比之下,可变磁阻传感器可以通过检测车速传感器齿轮或轮轴的转动状态,测量车速,并反馈到车载控制系统中。 磁医学设备:磁医学设备包括MRI(核磁共振影像仪)、MRS(核磁共振光谱仪)和SQUID(超导量子干涉仪)等。在这些设备中,可变磁阻传感器被用于检测电信号和磁信号之间的转换过程,以获取更准确的数据。 6、霍尔压力传感器 霍尔压力传感器是基于某些半导体材料的霍尔效应制成的。霍尔效应是指当固体导体放置在一个磁场内,且有电流通过时,导体内的电荷载子受到洛伦兹力而偏向一边,继而产生电压(霍尔电压)的现象。电压所引致的电场力会平衡洛伦兹力。通过霍尔电压的极性,可证实导体内部的电流是由带有负电荷的粒子(自由电子)之运动所造成。 在导体上外加与电流方向垂直的磁场,会使得导线中的电子受到洛伦兹力而聚集,从而在电子聚集的方向上产生一个电场,此电场将会使后来的电子受到电力作用而平衡掉磁场造成的洛伦兹力,使得后来的电子能顺利通过不会偏移,此称为霍尔效应。而产生的内建电压称为霍尔电压。 当磁场为一交变磁场时,霍尔电动势也为同频率的交变电动势,建立霍尔电动势的时间极短,故其响应频率高。理想霍尔元件的材料要求要有较高的电阻率及载流子迁移率,以便获得较大的霍尔电动势。常用霍尔元件的材料大都是半导体,包括N型硅(Si)、锑化铟(InSb)、砷化铟InAs)、锗(Ge)。 应用场景 汽车行业 在汽车行业中,霍尔式压力传感器通常用于测量轮胎的压力,以及发动机和制动系统的压力等。这些数据对汽车的驾驶安全和燃油经济性都有着重要的影响。 航空航天 在航空航天领域,霍尔式压力传感器被广泛应用于测量飞机发动机和燃料系统中的压力。这些数据具有极高的精确性和稳定性,可以保证飞机的安全运行。 医疗器械 在医疗器械领域,霍尔式压力传感器通常用于测量各种生理参数,例如血压、心率等。这些数据对于临床医疗和医学研究都有着重要的意义。 工业控制 在工业控制领域,霍尔式压力传感器通常用于对各种工业设备中的液体、气体压力等参数进行测量和监测。这些数据可以帮助工程师和技术人员进行设备的维护和调试,以确保工业生产的正常运行。 7、电涡流压力传感器 基于电涡流效应的压力传感器。电涡流效应是由一个移动的磁场与金属导体相交,或是由移动的金属导体与磁场垂直交会所产生。简而言之,就是电磁感应效应所造成。这个动作产生了一个在导体内循环的电流。 电涡流特性使电涡流检测具有零频率响应等特性,因此电涡流压力传感器可用于静态力的检测。 应用场景 电涡流式传感器是一种非接触式传感器,它可以测量金属表面的微小变形和振动,因此在许多领域都有广泛的应用。 汽车制造业 传感器可以用于汽车制造业中的质量控制。例如,在发动机制造过程中,传感器可以检测发动机零件的尺寸和复制全文合要求,此外,传感器还可以检测发动机的振动和噪音水平,以确保发动机的性能和可靠性。 航空航天工业 电涡流式传感器在航空航天工业中也有广泛的应用。例如,在飞机制造过程中,传感器可以检测飞机零件的尺寸和形状是否符合要求。此外,传感器还可以检测飞机的振动和噪音水平,以确保飞机的性能和安全性。 电涡流式传感器可以用于金属加工业中的质量控制。例如,在钢铁制造过程中,传感器可以检测钢铁板的尺寸和形状是否符合要求。此外,传感器还可以检测钢铁板的表面质量和硬度,以确保钢铁板的质量和可靠性。 医疗设备制造业 电涡流式传感器可以用于医疗设备制造业中的质量控制。例如,在人工关节制造过程中,传感器可以检测人工关节的尺和形状是否符合要求。此外,传感器还可以检测人工关节的表面质量和硬度,以确保人工关节的质量和可靠性. 8、振弦压力传感器 振弦压力传感器属于频率敏感型传感器,这种频率测量具有相当高的准确度,因为时间和频率是能准确测量的物理量参数,而且频率信号在传输过程中可以忽略电缆的电阻、电感、电容等因素的影响。同时,振弦式压力传感器还具有较强的抗干扰能力,零点漂移小、温度特性好、结构简单、分辨率高、性能稳定,便于数据传输、处理和存储,容易实现仪表数字化,所以振弦式压力传感器也可以作为传感技术发展的方向之一。 振弦式压力传感器的敏感元件是拉紧的钢弦,敏感元件的固有频率与拉紧力大小有关。弦的长度是固定的,弦的振动频率变化量可用来测算拉力的大小,即输入的是力信号,输出的是频率信号。振弦式压力传感器分为上下两个部分组成,下部构件主要是敏感元件组合体。上部构件是铝壳,包含一个电子模块和一个接线端子,分成两个小室放置,这样在接线时就不会影响电子模块室的密封性。 振弦式压力传感器可以选择电流输出型和频率输出型。振弦式压力传感器在运作时,振弦以其谐振频率不停振动,当测量的压力发生变化时,频率会产生变化,这种频率信号经过转换器转换为4~20mA的电流信号。 本文章源自奇迹物联开源的物联网应用知识库Cellular IoT Wiki,更多技术干货欢迎关注收藏Wiki: Cellular IoT Wiki 知识库(https://rckrv97mzx.feishu.cn/wiki/wikcnBvAC9WOkEYG5CLqGwm6PHf)
  • 2024-9-26 14:57
    198 次阅读|
    0 个评论
    01 物联网系统中为什么要使用薄膜型压阻传感器 物联网系统中使用薄膜型压阻传感器的原因主要基于其独特的性能特点和广泛的应用价值。以下是详细的分析: 02 薄膜型压阻传感器的性能特点 1、高精度: 薄膜型压阻传感器通过将外部物理量(如压力、重量、扭矩等)转换成电阻变化来实现测量,具有较高的测量精度。 2、快速响应: 由于薄膜材料的特性,薄膜型压阻传感器具有快速的响应速度,能够实时监测和反应外部物理量的变化。 3、高灵敏度: 薄膜材料对于微小的物理量变化非常敏感,使得薄膜型压阻传感器能够捕捉到微小的信号变化,实现精确测量。 4、宽测量范围: 薄膜型压阻传感器可用于大范围的压力、重量等物理量的测量,满足物联网系统多样化的需求。 5、结构紧凑、安装方便: 薄膜型压阻传感器通常由少量的材料组成,结构紧凑,便于在物联网系统中进行安装和集成。 6、低成本: 相比其他类型的传感器,薄膜型压阻传感器在制造成本上具有优势,有助于降低物联网系统的整体成本。 03 薄膜型压阻传感器在物联网系统中的应用价值 1、工业自动化: 在工业自动化领域,薄膜型压阻传感器可用于测量机器人的力量和压力、生产线上的物料重量等,为自动化控制提供准确的数据支持。 2、汽车工业: 在汽车工业中,薄膜型压阻传感器可用于测量汽车的压力、流量、温度等参数,以及监测轮胎压力等,确保汽车的正常运行和安全性。 3、医疗领域: 在医疗设备中,薄膜型压阻传感器可用于血压测量、呼吸监测等医疗应用,为患者提供精确的生理参数监测。 4、消费电子: 在智能手机、平板电脑等消费电子产品中,薄膜型压阻传感器可用于实现触摸屏、按压感应等功能,提升用户体验。 5、环境监测: 在环境监测领域,薄膜型压阻传感器可用于测量大气压力、水位等环境参数,为环境保护和气象预报提供数据支持。 综上所述,物联网系统中使用薄膜型压阻传感器的原因在于其高精度、快速响应、高灵敏度、宽测量范围、结构紧凑、安装方便以及低成本等性能特点,以及其在工业自动化、汽车工业、医疗领域、消费电子和环境监测等领域的广泛应用价值。这些优势使得薄膜型压阻传感器成为物联网系统中不可或缺的重要组成部分,为物联网的智能化、高效化和安全化提供了有力支持。 本文会再为大家详解压力传感器家族中的一员——薄膜型压阻传感器 . 04 薄膜型压阻传感器的定义 薄膜型压阻传感器,属于压阻式压力传感器,是利用真空沉积技术将半导体材料沉积在带有绝缘层的试件上而制成的,结构如图。 05 薄膜型压阻传感器的原理 薄膜压力传感器是利用现代薄膜制备技术,在金属弹性基体上沉积薄膜应变电阻,因其具有精度高、蠕变性好、抗干扰力强等性能。薄膜压力传感器厚度低至几百纳米到几十微米,可直接在被测零件表面制膜而不影响设备内部环境,制作简单,有利于实现结构/感知一体化制造。 薄膜压力传感器在受压力时电阻随压力增大而减小,其压阻特性表现为电阻与 压力呈幂函数关系,电阻倒数与压力呈近似线性关系,单点 感应单元可视为一个压力可变电阻。 06 薄膜型压阻传感器种类 1)合金薄膜压力传感器 合金薄膜制作的压力传感器虽然应变灵敏系数较低,但具有精度高、抗干扰能力强、温度特性较好且应用温度范围较宽等优点得到了广泛的运用。 薄膜压力传感器的主要组成部分:基体、转换元件以及信号调理电路等。 合金薄膜压力传感器一般采用溅射、蒸镀等方法把合金沉积在弹性基体上。 薄膜电阻层通过感受弹性元件的应变而产生相应电阻变化,通过信号调理电路输出相应的电压信号,从而完成非电量到电量的转换。 2)半导体材料薄膜压力传感器 半导体薄膜压力传感器应变灵敏系数较高,一般情况下比金属薄膜的应变系数高出一个数量级,适合批量生产且成本低廉,其缺点是温度特性较差。 半导体材料薄膜压力传感器采用单晶硅为基体,压力腔弹性膜由单晶硅通过各向异性腐蚀而得到,沉积SiO2作为绝缘层,化学气相沉积等方法外延生长压敏电阻薄膜。 具体结构如图3所示。薄膜压阻层通过感受外部压力引起压阻材料载流子密度的变化,从而导致薄膜电阻的变化,其后的信号调理和电量转化与合金薄膜压力传感器类似。 07 薄膜型压阻传感器的测量维度 1)一维单点压力传感器 一维单点压力传感器只能感受坐标轴Z方向的力。 2)一维多点分布传感器 多点分布式传感器是采用1行*N列或者M行*N列的电极设计,每个感应点仍是独立的单元。如下图:M0303M是采用3行*3列的模式,总共9个感应点;0404M是采用4行*4列的模式,总共16个感应。 3)二维单点压力传感器 二维单点压力传感器,能感受在X轴方向上的位置和Z轴方向上的力,很容易感受线性方向的带有力的大小的滑动。 4)三维单点压力传感器,能感受在X轴和Y轴方向的位置和Z轴方向的力。类似于带压力的单点触摸屏。 5)三维多点压力传感器 能感受多点在X轴和Y轴方向的位置和Z轴方向的力。类似于带压力的多点触摸屏。 6)高密度分布式柔性压力传感器 分布式柔性薄膜压力传感器是采用电极矩阵式分布设计,每个交叉点即为一个感应单元。传感器在受到压力时,电阻随压力增大而减小,其压阻特性表现为电阻与压力呈幂函数关系,电阻倒数与压力呈近似线性关系。该传感器特点在于每行、每列的功能感应区均为独立布局,实现最小干扰。 08 薄膜型压阻传感器的注意事项 因为其工作原理,薄膜压力传感器有以下特征,在应用场景应注意: 1,从结构上来说,传感器的背面最好是平滑的表面。传感器不能弯折,弯折会让传感器产生误压力值。 2,因为其工作原理,薄膜压力传感器不是精准测量器件,其重复率大约为±5%,也就是相同的压力压在传感器上,两次误差大约±5%。 3,薄膜压力传感器长时间按压会有漂移,所以正常状态下最好没有力压在传感器上。 4,薄膜压力传感器的测量范围大约是10克到10千克,如果需要测量的力超过10千克,一般需要用一个结构件分担总的压力,让压在薄膜传感器上的压力仍然保持在10千克以内。 09 供应商A:常州柔希电子科技有限公司 1、产品能力 (1)选型手册 (2)主推型号1:D0306 单点压阻式柔性压力传感器只有一个感应点单元,即只能得出一个信号,传感器在受到压力时,电阻随压力增大而减小,可看作一个压力驱动变化的可变电阻,其压阻特性表现为电阻与压力呈幂函数关系,电阻倒数与压力呈近似线性关系。 D0306 是一款小尺寸柔性压力传感器,其感应直径为3mm ,外力轮廓直径为 6mm ,超薄、灵敏、尺寸小等特点使得该型号传感器在机器人、皮肤压力、触感设备等微小压力变化检测等方面获得广泛的应用。 传感器参数 硬件参考设计 采用分压方式测量。压力传感器与 R1 串联,两端分别接 VCC 和 GND,构成基本的分压电路,分压电压接出为 Vout。可以将压力大小变化对应的传感器输出电阻变化转为电压变化信号。根据不同的应用需求选择适当的负载电阻 R1,通常可取 1kΩ~100kΩ(建议负载电阻取 50%量程压力时传感器对应的电阻值);Vout 接单片机 ADC 接口,可以用作检测压力大小;接 MCU 的外部中断 IO 口,可用作压力触发功能。 研发设计注意使用事项 传感器区域需平整贴合测试面; 避免尖锐的物体作用于传感区域; 超过 60°C时,传感器温度漂移严重,尽量避免高于 60C下使用; 为了获得最佳测试效果,建议在传感区域贴上略小于传感区的薄硅胶垫D0306 供应商B:苏州能斯达电子科技有限公司 1、产品能力 (1)选型手册 (2)主推型号1:DF9-40 对应的产品详情介绍 产品特点 超薄,厚度小于 0.3mm 响应速度快 寿命长,通过 100 万次以上按压测试 检测电路简单,易于集成应用 可定制传感器外形 可定制传感器量程参数 产品描述 DF9-40 系列柔性薄膜压力传感器是苏州能斯达电子采用拥有自主知识产权的柔性压力传感技术制备的新型传感器,在柔韧轻薄材料上印刷附着力强、耐弯折、灵敏度高的柔性纳米功能材料,使其实现对压力的高灵敏度检测。柔性薄膜压力传感器是一种电阻式传感器,输出电阻随施加在传感器表面压力的增大而减小,通过特定的压力-电阻关系,可测量出压力大小。适用于柔性面的压力测量场景,可广泛应用于智能家居、消费电子、汽车电子、医疗设备、工业控制、智能机器人等领域。DF9-40 系列目前有 500g、2kg、5kg、10kg、20kg 等不同量 程型号产品。 采用分压方式测量。压力传感器与 R1 串联,两端分别接 VCC 和 GND,构成基本的分压电路,分压电压接出为 Vout。可以将压力大小变化对应的传感器输出电阻变化转为电压变化信号。根据不同的应用需求选择适当的负载电阻 R1,通常可取 1kΩ~100kΩ(建议负载电阻取 50%量程压力时传感器对应的电阻值);Vout 接单片机 ADC 接口,可以用作检测压力大小;接 MCU 的外部中断 IO 口,可用作压力触发功能。 本文章源自奇迹物联开源的物联网应用知识库Cellular IoT Wiki,更多技术干货欢迎关注收藏Wiki: Cellular IoT Wiki 知识库(https://rckrv97mzx.feishu.cn/wiki/wikcnBvAC9WOkEYG5CLqGwm6PHf)
  • 热度 6
    2024-2-5 13:32
    1815 次阅读|
    2 个评论
    压力传感器一般都使用电阻桥输出。需要在桥的两端加上激励,从另外两端输出。使用应变片电阻作为敏感元件。 电阻桥有 4 电阻, 2 电阻和单电阻的三种。激励方式可以是恒压或恒流。 当受力时,电阻的变化规律。 R1 R2 R3 R4 4 电阻 R- Δ R R+ Δ R R+ Δ R R- Δ R 2 电阻 R R+ Δ R R+ Δ R R 1 电阻 R R R+ Δ R R 使用恒压或恒流驱动。输出 VP-VN 分别为 VP-VN ( 恒压 V) VP-VN ( 恒流 V/R) 4 电阻 V/R* Δ R V/R* Δ R 2 电阻 V/(R+ Δ R)* Δ R V/R* Δ R 1 电阻 V/2R*R-V/(2R+ Δ R)*R - 推导出准确表达式有难度 当传感器使用 4 个电阻时,使用恒压或恒流驱动结果没有区别。使用 2 个电阻时,恒流驱动仍保持线性。恒压驱动的线性度会受到Δ R 的影响。 对于只有 1 个电阻的传感器,分别仿真导出数据。对数据做直线拟合,并对比残差,发现使用恒流驱动时的线性度好于恒压驱动。理论上,恒流比恒压性能好一倍。 设计一个使用 TL431 的恒流驱动器,为方便连接后级的放大器,恒流源采用源出的方式,传感器可以接地。图中 R2~R5 表示压力传感器的电阻桥。使用 Q1 Q2 两个 PNP 三极管连接成电流镜电路。当电路上电工作时, U1 的 A , K 级将调速电压到 2.5V ,这个电压近似等于 R8 两端的电压,因而 Q2 的发射极电流 Ie 为 2.5/2= 1.25mA , Ie 近似等于 Ic ,所以传感器的激励电流也是 1.25mA 。 从计算的结果看,即便供电电源不稳定,图中的直流 18V 输出叠加了 2Vrms 值的交流干扰。 激励电流依然稳定,输出也基本稳定。 模拟使用 1 个应变片的压力传感器,可以看出输出随电阻基本线性变化。
  • 热度 2
    2023-11-27 11:40
    415 次阅读|
    0 个评论
    在压力传感器出现之前,我们在测量发动机压缩冲程时主要关注的是气缸压力峰值。WPS500X压力传感器在分析气缸压力这块功能非常先进,我们可以通过正/负气缸压力、气门开启/关闭和气门开闭持续时间等多方面来进行分析。与WPS500X压力传感器相比,用传统的压力表测量时,各缸压力峰值之间的差异会比较大。 以下帖子讨论过该问题:使用WPS500X压力传感器进行压缩测试 如果我们需要使用压力传感器获得准确的气缸压力峰值,则必须考虑并补偿压力传感器的内部容积。因此,我想在这里重温一下 在PicoScop 6 Automotive软件中(不是Pico Diagnostics) ,通过压力传感器测量气缸压力峰值时涉及的“补偿”这一数学通道。 我在过去错误地认为我们的压力传感器的内部容积为5mL,但多亏了皮科克夫、沃勒姆和其他用户的提示,实际上压力传感器的内部容积是1.22mL左右。如果我们将压缩软管安装在压力传感器上(压缩软管内部容积约为2mL),总容积大约为3.22mL。再加上压缩软管转接头(用于连接火花塞)的内部容积, 传感器、压缩软管和火花塞接头的内部总容积通常是5mL左右 。也就是说,用于汽油发动机压缩测试的“集成一体化”压力传感器总容积约为5mL。需要注意的是,如果我们添加一个预热塞适配器(用于柴油机压缩测试),由于它的大小和容积有所不同,总容积的数值将大大增加。 在这里我想说的是,使用压力传感器进行汽油发动机压缩峰值的测量过程中,在应用相关数学通道时,要输入5 mL作为传感器的总容积值;如果是用压力传感器对柴油发动机压缩峰值进行测量,在应用相关数学通道时,要输入“5 mL + 预热塞适配器容积”作为传感器的总容积值。 引用以下帖子:使用WPS500X压力传感器进行压缩测试 当使用PicoScope 6 Automotive软件时,使用连接到压缩软管的压力传感器(总容积为5mL)测量气缸压力峰值时, 我们需要根据气缸容积、压缩比和传感器总容积值设置一个倍增系数 。 我们有一台沃克斯豪尔·阿斯特拉柴油车,1.7升的4缸发动机,压缩比为18:1,传感器总容积值为7mL(传感器和压缩软管共5毫升+预热塞适配器2毫升)。 使用WPS500X压力传感器时,PicoScope 6 Automotive软件测量气缸压力峰值时所需的补偿公式计算过程为: 单个气缸排量/(压缩比-1)=燃烧室容积 ·燃烧室容积+传感器总容积值)/燃烧室容积=倍增系数 然后使用倍增系数乘以WPS500X得出的压力结果。 例如:4缸发动机排量1686 cc,压缩比18:1, 每缸排量:1686/4=421.50 cc 燃烧室容积:421.50 /(18-1)=24.79 cc 倍增系数:(24.79 cc +7 mL)/ 24.79 cc =1.28 所以1.28是补偿气缸压力峰值所需的倍增系数。 倍增系数*压力传感器处的压力值=补偿后的气缸压力值 ,补偿过程中考虑了压力传感器、压缩软管和预热塞适配器的内部容积。 捕捉气缸压力信号的WPS500X连接到了B通道上,所以补偿公式为:压力*倍增系数=B*1.28。 图1 补偿公式 现在我们得到了补偿后的气缸压力峰值。 图2 补偿前后对比 请注意,温度也会影响我们的补偿值,因此如果有需要的话,可将温度纳入到公式当中。 您可以下载这个例子中使用的psdata文件,补偿数学通道也在文件当中 。 WPS500X的最大工作压力为34.5bar(500psi),不过有时柴油机的气缸压力会超过这个数值。(尤其是在压缩测试期间喷油器保持连接的情况下) 虽然下面我们要讲解的示例不适用于所有类型的发动机,但我们其实可以使用一个集成在预热塞中的压力传感器来做压缩测试。 图3 集成预热塞 现在我们可以在没有其他干扰、不增加燃烧室容积的情况下,测量发动机整个范围的转速和负荷下的气缸压力峰值。 以下公式适用于压力传感器集成在VAG TDI发动机预热塞当中的情况 。 由于此时VAG预热塞就相当于具备了压力传感器的功能,我们可以创建一个数学通道,将预热塞(压力传感器)测得的电压转换为压力值(bar),所需公式为: 压力=(传感器测量电压–传感器标称电压)/传感器斜率; 传感器测量电压=与气缸压力成比例的传感器输出电压; 传感器标称电压=点火开关打开、发动机关闭(0 bar)时传感器输出的电压,约为0.575 V; 传感器斜率是指传感器在整个工作范围(0-210 bar)内响应气缸压力(1 V=约55.555 bar)的输出。 将该值视为类似于具有1 mV/A的指定特征输出的电流钳。对于电流钳,输出1mV,示波器显示读数为1 A,因此电流钳输出1V(1000 mV)示波器显示读数为1000 A。 请注意,传感器斜率是一个四舍五入的近似值,取决于压力传感器电源电压。在这里,我们假设传感器的供电电压为5 V,但实际上这个电压值可能会有偏差,4.8 V-5.2 V不等,这无疑会影响压力传感器在其工作范围内的输出。我们把从数学通道中获得的压力值视为近似气缸压力值。 创建数学通道(假设你的预热塞压力传感器连接到通道A),那么 气缸压力公式为:(A-0.575)/55.555。 图4 压力公式 下面的波形展示了发动机在加速时气缸压力的急剧增加。这也让我们了解到燃烧过程中气缸内发生的变化,并且揭示了这类发动机在标准行驶循环工况下所承受的压力大小。 图5 预热塞压力 需要注意的是,由于该压力传感器本身设计可测量高达210bar的压力,不过集成预热塞压力传感器受限于发动机较低的转速/压力,使用不到210bar这个最大量程。虽然这个问题依然存在,但对于我们观察整个发动机转速/负荷范围内的燃烧过程,无疑是非常宝贵的。 图6.不同转速和负荷下的压力.PNG (236.84 KB, 下载次数: 6) 下载附件 2020-8-18 08:52 上传 图6 不同转速和负荷下的压力
相关资源