日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 技術(shù)學院 > 技術(shù)前線
[導讀]Water Sensor水位傳感器學習筆記

、認識Water Sensor水位傳感器

1.概念簡介

Water Sensor水位傳感器是一款簡單易用、性價比較高的水位/水滴識別檢測傳感器,其是通過具有一系列的暴露的平行導線線跡測量其水滴/水量大小從而判斷水位。輕松完成水量到模擬信號的轉(zhuǎn)換,輸出的模擬值可以直接被Arduino開發(fā)板讀取,達到水位報警的功效。

實物圖:


水位傳感器

接線圖:


水位傳感器

2.工作原理

Water Sensor水位傳感器能夠監(jiān)測水位。該模塊主要是利用三極管的電流放大原理:當液位高度使三極管的基極與電源正極導通的時候,在三極管的基極和發(fā)射極之間就會產(chǎn)生一定大小的電流,此時在三極管的集電極和發(fā)射極之間就會產(chǎn)生一個一定放大倍數(shù)的電流,該電流經(jīng)過發(fā)射極的電阻產(chǎn)生特點電壓,被AD轉(zhuǎn)換器采集。

3.特性

工作電壓:DC3—5V

傳感器類型:模擬

工作濕度:10%—90%無凝結(jié)

產(chǎn)品尺寸:62mmX20mmX8mm

工作電流:小于20mA

檢測面積:40mmX16mm

工作濕度:10℃—30攝氏度℃

Water Sensor水位傳感器不僅可以測量水位,還可以測量是否有水,當測量是否有水時,直接檢測輸出端引腳,若檢測為0,則顯示沒有水,若檢測到1,則有水;當檢測水位變化時,需要進行ADC采集,利用函數(shù)進行模擬電壓值到水位的轉(zhuǎn)換。

二、檢測是否有水

#include "water.h"

#include "delay.h"

#define WA GPIO_Pin_11

/*************** 配置LED用到的I/O口 *******************/

void Water_GPIO_Config(void)

{

GPIO_InitTypeDef GPIO_InitStructure;

RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB, ENABLE); // 使能端口時鐘

GPIO_InitStructure.GPIO_Pin = WA;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_Init(GPIOB, &GPIO_InitStructure); //初始化端口

//GPIO_SetBits(GPIOB, WA); // 關(guān)閉所有LED

}

int Water_state(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin_x)

{

Delay_ms(10);

if( GPIO_ReadInputDataBit(GPIOx, GPIO_Pin_x) == 0)

{

return 1;

}

else

{

return 0;

}

}

if( Water_state(GPIOB, GPIO_Pin_11)== 0)

{

printf("\r\n有水");

}

else

printf("\r\n無水");


水位傳感器

三、檢測水位(優(yōu)化)

使用ADC采集

/************************************

* 文件名 :adc.c

* 描述 :DMA方式讀取ADC值應用函數(shù)庫

* 實驗平臺:MINI STM32開發(fā)板 基于STM32F103C8T6

* 硬件連接: PCA0 - ADC1

* 庫版本 :ST3.0.0

**********************************************************************************/

#include "adc.h"

#define ADC1_DR_Address ((u32)0x4001244C)

__IO u16 ADC_ConvertedValue;

/*配置采樣通道端口 使能GPIO時鐘 設置ADC采樣PA0端口信號*/

void ADC1_GPIO_Config(void)

{ GPIO_InitTypeDef GPIO_InitStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN; //GPIO設置為模擬輸入

GPIO_Init(GPIOA, &GPIO_InitStructure);

}

/*配置ADC1的工作模式為MDA模式 */

void ADC1_Mode_Config(void)

{

DMA_InitTypeDef DMA_InitStructure;

ADC_InitTypeDef ADC_InitStructure;

RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE); //使能MDA1時鐘

/* DMA channel1 configuration */

DMA_DeInit(DMA1_Channel1); //指定DMA通道

DMA_InitStructure.DMA_PeripheralBaseAddr = ADC1_DR_Address;//設置DMA外設地址

DMA_InitStructure.DMA_MemoryBaseAddr = (u32)&ADC_ConvertedValue; //設置DMA內(nèi)存地址,ADC轉(zhuǎn)換結(jié)果直接放入該地址

DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralSRC; //外設為設置為數(shù)據(jù)傳輸?shù)膩碓?

DMA_InitStructure.DMA_BufferSize = 1; //DMA緩沖區(qū)設置為1;

DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;

DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Disable;

DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord;

DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord;

DMA_InitStructure.DMA_Mode = DMA_Mode_Circular;

DMA_InitStructure.DMA_Priority = DMA_Priority_High;

DMA_InitStructure.DMA_M2M = DMA_M2M_Disable;

DMA_Init(DMA1_Channel1, &DMA_InitStructure);

/* Enable DMA channel1 */

DMA_Cmd(DMA1_Channel1, ENABLE); //使能DMA通道

RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1, ENABLE); //使能ADC1時鐘

/* ADC1 configuration */

ADC_InitStructure.ADC_Mode = ADC_Mode_Independent; //使用獨立模式,掃描模式

ADC_InitStructure.ADC_ScanConvMode = ENABLE;

ADC_InitStructure.ADC_ContinuousConvMode = ENABLE; //無需外接觸發(fā)器

ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None; //使用數(shù)據(jù)右對齊

ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;

ADC_InitStructure.ADC_NbrOfChannel = 1; // 只有1個轉(zhuǎn)換通道

ADC_Init(ADC1, &ADC_InitStructure);

/* ADC1 regular channel11 configuration */

ADC_RegularChannelConfig(ADC1, ADC_Channel_0, 1, ADC_SampleTime_55Cycles5); //通道1采樣周期55.5個時鐘周期

/* Enable ADC1 DMA */

ADC_DMACmd(ADC1, ENABLE); //使能ADC的DMA

/* Enable ADC1 */

ADC_Cmd(ADC1, ENABLE); //使能ADC1

/* Enable ADC1 reset calibaration register */

ADC_ResetCalibration(ADC1);

/* Check the end of ADC1 reset calibration register */

while(ADC_GetResetCalibrationStatus(ADC1));

/* Start ADC1 calibaration */

ADC_StartCalibration(ADC1);

/* Check the end of ADC1 calibration */

while(ADC_GetCalibrationStatus(ADC1));

/* Start ADC1 Software Conversion */

ADC_SoftwareStartConvCmd(ADC1, ENABLE); //開始轉(zhuǎn)換

}

/*初始化ADC1 */

void ADC1_Init(void)

{

ADC1_GPIO_Config();

ADC1_Mode_Config();

}

AD_value = 3300000/4096*ADC_ConvertedValue/1000;

val=(exp(0.0056*AD_value))*0.467;

printf("水位深度 = %d mm \r\n", val);

Delay_ms(1000);


水位傳感器
本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設中,街道及停車場照明作為基礎(chǔ)設施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉