中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

哈爾濱網(wǎng)站建設(shè)信息網(wǎng)站如何做優(yōu)化排名

哈爾濱網(wǎng)站建設(shè)信息,網(wǎng)站如何做優(yōu)化排名,建設(shè)部企業(yè)資質(zhì)查詢,外企外貿(mào)是做什么的前言 雨打燈難滅,風(fēng)吹色更明。 若飛天上去,定作月邊星?!畎住对佄灮稹?一、旋轉(zhuǎn)編碼器介紹 旋轉(zhuǎn)編碼器是一種可以左右旋轉(zhuǎn),同時(shí)也可以按下,也可以按下旋轉(zhuǎn)的器件,通過(guò)左右旋轉(zhuǎn)對(duì)應(yīng)著內(nèi)部不同開關(guān)的導(dǎo)通&#xff…

前言

雨打燈難滅,風(fēng)吹色更明。
若飛天上去,定作月邊星?!畎住对佄灮稹?/p>


一、旋轉(zhuǎn)編碼器介紹

旋轉(zhuǎn)編碼器是一種可以左右旋轉(zhuǎn),同時(shí)也可以按下,也可以按下旋轉(zhuǎn)的器件,通過(guò)左右旋轉(zhuǎn)對(duì)應(yīng)著內(nèi)部不同開關(guān)的導(dǎo)通,同時(shí)按下也可以旋轉(zhuǎn),由此看來(lái)旋轉(zhuǎn)編碼器可以實(shí)現(xiàn)很復(fù)雜的功能,簡(jiǎn)單的通過(guò)左右旋轉(zhuǎn)可以調(diào)節(jié)音量、亮暗等功能,按鍵可以發(fā)揮普通按鍵的作用,按下按鍵的同時(shí)左右旋轉(zhuǎn)又可以區(qū)別普通旋轉(zhuǎn)的按鍵,因此可以用一個(gè)旋轉(zhuǎn)編碼器同時(shí)調(diào)節(jié)音量和亮暗(舉例),同時(shí)也可以通過(guò)不同的轉(zhuǎn)速實(shí)現(xiàn)不同的功能,綜上所述,它的功能很復(fù)雜,用處也很多。

旋轉(zhuǎn)編碼器是用來(lái)測(cè)量轉(zhuǎn)速并配合 PWM 技術(shù)可以實(shí)現(xiàn)快速調(diào)速的裝置,光電式旋轉(zhuǎn)編碼器通過(guò)光電轉(zhuǎn)換,可將輸出軸的角位移、角速度等機(jī)械量轉(zhuǎn)換成相應(yīng)的電脈沖以數(shù)字量輸出(REP)。

  • 按信號(hào)的輸出類型分為: 電壓輸出、集電極開路輸出、推拉互補(bǔ)輸出和長(zhǎng)線驅(qū)動(dòng)輸出。
  • 形式分類:
    有軸型:有軸型又可分為夾緊法蘭型、同步法蘭型和伺服安裝型等。
    軸套型:軸套型又可分為半空型、全空型和大口徑型等。
    以編碼器工作原理可分為: 光電式、磁電式和觸點(diǎn)電刷式。
    按碼盤的刻孔方式不同分類編碼器可分為增量式和絕對(duì)式兩類。

旋轉(zhuǎn)編碼器的原理和特點(diǎn)

  • 原理:

    • 旋轉(zhuǎn)編碼器是集光機(jī)電技術(shù)于一體的速度位移傳感器。當(dāng)旋轉(zhuǎn)編碼器軸帶動(dòng)光柵盤旋轉(zhuǎn)時(shí),經(jīng)發(fā)光元件發(fā)出的光被光柵盤狹縫切割成斷續(xù)光線,并被接收元件接收產(chǎn)生初始信號(hào)。該信號(hào)經(jīng)后繼電路處理后,輸出脈沖或代碼信號(hào)。
    • 旋轉(zhuǎn)編碼器是由一個(gè)中心有軸的光電碼盤組成,其上有環(huán)形通、暗的刻線,有光電發(fā)射和接收器件讀取,獲得四組正弦波信號(hào)組合成A、B、C、D,每個(gè)正弦波相差90度相位差,將C、D信號(hào)反向,疊加在A、B兩相上,可以增強(qiáng)穩(wěn)定信號(hào);另每轉(zhuǎn)輸出一個(gè)Z相脈沖以代表零位參考位。因?yàn)锳、B兩相相差90度,可以通過(guò)比較A相在前還是B相在前,借此來(lái)判別編碼器的正轉(zhuǎn)與反轉(zhuǎn),通過(guò)零位脈沖,可獲得編碼器的零位參考位。
  • 特點(diǎn):

    體積小、重量輕、品種多、功能全、頻響高、分辨能力高,力矩小,耗能低,性能穩(wěn)定,可靠使用壽命長(zhǎng)等特點(diǎn)。

1、增量式編碼器

增量式編碼器是將位移轉(zhuǎn)換成周期性的電信號(hào),再把這個(gè)電信號(hào)轉(zhuǎn)變成計(jì)數(shù)脈沖,用脈沖的個(gè)數(shù)表示位移的大小。增量式編碼器也稱為正交編碼器,是通過(guò)兩個(gè)信號(hào)線的脈沖輸出來(lái)進(jìn)行數(shù)據(jù)處理,一個(gè)輸出脈沖就對(duì)應(yīng)于一個(gè)增量位移,編碼器每轉(zhuǎn)動(dòng)一定的位移,就會(huì)產(chǎn)生一個(gè)脈沖信號(hào)。通過(guò)讀取單位時(shí)間脈沖信號(hào)的數(shù)量,達(dá)到測(cè)量速度的效果(v = s / t),通過(guò)對(duì)脈沖信號(hào)的累加,和編碼器的碼盤周長(zhǎng) (轉(zhuǎn)一圈對(duì)應(yīng)的距離) 便可以達(dá)到計(jì)算距離的效果(s = n * d)。

  • 工作原理:

    增量式旋轉(zhuǎn)編碼器通過(guò)兩個(gè)光敏接收管來(lái)轉(zhuǎn)化角度碼盤的時(shí)序和相位關(guān)系,得到角度碼盤角度位移量的增加(正方向)或減少(負(fù)方向)。
    增量式編碼器工作原理圖解
  • 上圖A、B兩點(diǎn)間的距離為S2,A、B表示兩個(gè)相同的光敏接收管,下面的角度碼盤的光柵間距分別為S0(凹槽)和S1(凸起)。
  • 當(dāng)角度碼盤勻速轉(zhuǎn)動(dòng)時(shí),可知輸出波形圖中的S0:S1:S2比值與實(shí)際圖的S0:S1:S2比值相同,同理,當(dāng)角度碼盤變速轉(zhuǎn)動(dòng)時(shí),輸出波形圖中的S0:S1:S2比值與實(shí)際圖的S0:S1:S2比值仍相同。
  • 通過(guò)輸出波形圖可知每個(gè)運(yùn)動(dòng)周期:
順時(shí)針運(yùn)動(dòng)逆時(shí)針運(yùn)動(dòng)
A BA B
1 11 1
0 11 0
0 00 0
1 00 1
  • 我們把當(dāng)前的A、B輸出值保存起來(lái),與下一個(gè)到來(lái)的A、B輸出值做比較,就可以得出角度碼盤轉(zhuǎn)動(dòng)的方向;

  • 如果光柵格S0等于S1時(shí),也就是S0和S1弧度夾角相同,且S2等于S0的1/2,那么可得到此次角度碼盤運(yùn)動(dòng)位移角度為S0弧度夾角的1/2,再除以所用的時(shí)間,就得到此次角度碼盤運(yùn)動(dòng)位移的角速度。

  • S0等于S1時(shí),且S2等于S0的1/2時(shí),1/4個(gè)運(yùn)動(dòng)周期就可以得到運(yùn)動(dòng)方向位和位移角度,如果S0不等于S1,S2不等于S0的1/2,那么要1個(gè)運(yùn)動(dòng)周期才可以得到運(yùn)動(dòng)方向位和位移角度了。

    (我們用的鼠標(biāo)的滾輪也是這個(gè)原理。)

  • 實(shí)際使用的增量式編碼器輸出三組方波脈沖A、B和Z(有的叫C相)相。A、B兩組脈沖相位差90o,可以判斷出旋轉(zhuǎn)方向和旋轉(zhuǎn)速度。而Z相脈沖又叫做零位脈沖(有時(shí)也叫索引脈沖),為每轉(zhuǎn)一周輸出一個(gè)脈沖,Z相脈沖代表零位參考位,通過(guò)零位脈沖,可獲得編碼器的零位參考位,專門用于基準(zhǔn)點(diǎn)定位,如下圖所示:
    在這里插入圖片描述
    在這里插入圖片描述

  • 增量是編碼器轉(zhuǎn)軸旋轉(zhuǎn)時(shí),有相應(yīng)的脈沖輸出,其計(jì)數(shù)起點(diǎn)可以任意設(shè)定,可實(shí)現(xiàn)多圈無(wú)限累加和測(cè)量。編碼器軸轉(zhuǎn)動(dòng)一圈會(huì)輸出固定的脈沖數(shù),脈沖數(shù)由編碼器碼盤上面的光柵的線數(shù)所決定,編碼器以每旋轉(zhuǎn)360度提供多少通或暗的刻線稱為分辨率,也稱解析分度、或稱作多少線,一般在每轉(zhuǎn)5~10000線,當(dāng)需要提高分辯率時(shí),可利用90度相位差的A、B兩路信號(hào)進(jìn)行倍頻或者更換高分辯率編碼器。

  • 增量型編碼器精度取決于機(jī)械和電氣的因素,這些因素有:光柵分度誤差、光盤偏心、軸承偏心、電子讀數(shù)裝置引入的誤差以及光學(xué)部分的不精確性,誤差存在于任何編碼器中。

  • 編碼器的信號(hào)輸出有正弦波(電流或電壓)、方波(TTL、HTL)等多種形式。并且都可以用差分驅(qū)動(dòng)方式,含有對(duì)稱的A+/A-、B+/B-、Z+/Z-三相信號(hào),由于帶有對(duì)稱負(fù)信號(hào)的連接,電流對(duì)于電纜貢獻(xiàn)的電磁場(chǎng)為0,信號(hào)穩(wěn)定衰減最小,抗干擾最佳,可傳輸較遠(yuǎn)的距離,例如:對(duì)于TTL的帶有對(duì)稱負(fù)信號(hào)輸出的編碼器,信號(hào)傳輸距離可達(dá)150米。對(duì)于HTL的帶有對(duì)稱負(fù)信號(hào)輸出的編碼器,信號(hào)傳輸距離可達(dá)300米。

  • 增量式編碼器軸旋轉(zhuǎn)時(shí),有相應(yīng)的相位輸出。其旋轉(zhuǎn)方向的判別和脈沖數(shù)量的增減,需借助后部的判向電路和計(jì)數(shù)器來(lái)實(shí)現(xiàn)。其計(jì)數(shù)起點(diǎn)可任意設(shè)定,并可實(shí)現(xiàn)多圈的無(wú)限累加和測(cè)量。還可以把每轉(zhuǎn)發(fā)出一個(gè)脈沖的Z信號(hào),作為參考機(jī)械零位。當(dāng)脈沖已固定,而需要提高分辨率時(shí),可利用帶90度相位差A(yù),B的兩路信號(hào),對(duì)原脈沖數(shù)進(jìn)行倍頻。
    在這里插入圖片描述

  • 編碼器時(shí)序:

在這里插入圖片描述

  • 實(shí)物圖:

我使用的是下面這種比較簡(jiǎn)單的五腳旋轉(zhuǎn)編碼器:
在這里插入圖片描述


二、引腳配置

我使用的旋轉(zhuǎn)編碼器有五個(gè)引腳,可能還會(huì)有其他不同類型的會(huì)有不同的引腳,
這五個(gè)引腳分別為GND, VCC(+), SW, DT, CLK,具體的引腳已經(jīng)在簡(jiǎn)介的圖中標(biāo)明了。

  • VCC:接電源正極 3.3~5V
  • GND:接地;
  • SW(Switch:開關(guān))PA7(TIM3_CH2)
  • DT(DT:數(shù)據(jù))PA6(TIM3_CH1)
  • CLK(CLK:時(shí)鐘)PA5(任選一個(gè)引腳:配置為上拉輸入模式)

接線表:

旋轉(zhuǎn)編碼器的接口STM32的IO口設(shè)置的工作模式
VCCVCC(3.3V)-
GNDGND-
SW(Switch:開關(guān))PA7定時(shí)器編碼模式
DT(DT:數(shù)據(jù))PA6定時(shí)器編碼模式
CLK(CLK:時(shí)鐘)PA5GPIO_Mode_IPU(上拉輸入模式)
-PA9TX(USART1 串口1通信)
-PA10RX(USART1 串口1通信)

三、新建工程

1.打開STM32CubeMX軟件,點(diǎn)擊“新建工程”

在這里插入圖片描述

2. 選擇 MCU 和封裝

在這里插入圖片描述

3.配置時(shí)鐘

在這里插入圖片描述
在這里插入圖片描述
具體學(xué)習(xí)可以參考:博客網(wǎng)站-RCC學(xué)習(xí)

4.配置調(diào)試模式

5.串口(USART1)配置

在這里插入圖片描述

6.定時(shí)器(TIM)配置
  • 配置為編碼器模式:
    在這里插入圖片描述
7.生成代碼

輸入項(xiàng)目名稱和路徑。(注:路徑中不允許出現(xiàn)中文。)
在這里插入圖片描述
選擇應(yīng)用的IDE,開發(fā)環(huán)境MDK-ARM V5
在這里插入圖片描述
每個(gè)外設(shè)生成獨(dú)立的 ’.c/.h’ 文件

  • 不勾: 所有初始化代碼都生成在 main.c
  • 勾選: 初始化代碼生成在對(duì)應(yīng)的外設(shè)文件。 如 GPIO 初始化代碼生成在 gpio.c 中。

    點(diǎn)擊 GENERATE CODE 生成代碼
8.構(gòu)建工程

DeBug的模式根據(jù)不同的芯片進(jìn)行選擇:
在這里插入圖片描述


四、編寫代碼

main.c文件中,添加一下代碼:

  • 重寫fgetfput函數(shù):勾選微庫(kù)(這個(gè)很重要),添加頭文件<stdio.h>
    在這里插入圖片描述
/* USER CODE BEGIN Includes */
#include<stdio.h>
/* USER CODE END Includes */
/*** 函數(shù)功能: 重定向c庫(kù)函數(shù)printf到DEBUG_USARTx* 輸入?yún)?shù): 無(wú)* 返 回 值: 無(wú)* 說(shuō)    明:無(wú)*/
int fputc(int ch, FILE *f)
{HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xffff);return ch;
}/*** 函數(shù)功能: 重定向c庫(kù)函數(shù)getchar,scanf到DEBUG_USARTx* 輸入?yún)?shù): 無(wú)* 返 回 值: 無(wú)* 說(shuō)    明:無(wú)*/
int fgetc(FILE *f)
{uint8_t ch = 0;HAL_UART_Receive(&huart1, &ch, 1, 0xffff);return ch;
}
  • 添加代碼encoder文件對(duì)(.c/.h):
    • 首先要新建文件,然后在添加到工程中去;
      在這里插入圖片描述
      在這里插入圖片描述
  • 將新建的文件添加到工程中去;

在這里插入圖片描述

  • 返回上一級(jí),尋找自己新建的文件:
    在這里插入圖片描述
    在這里插入圖片描述
    - 此時(shí),完成了添加encoder.c文件:encoder.c中添加如下代碼,即可將encoder.h添加進(jìn)工程
#include "encoder.h"
  • encoder.c中添加代碼:
#include "encoder.h"uint8_t lock;    //旋鈕鎖死標(biāo)志(1表示鎖死)
uint16_t count; //計(jì)數(shù)標(biāo)志uint8_t ENCODER_READ(void)
{uint8_t key = 0;       //存放按鍵的值uint8_t level;         //記錄按鈕另一端的電平值if(HAL_GPIO_ReadPin(encoder_port_A, encoder_right) && HAL_GPIO_ReadPin(encoder_port_A, encoder_left)) //讀取此時(shí){lock = 0;  //判斷旋鈕是否鎖死}if(!HAL_GPIO_ReadPin(encoder_port_A, encoder_right) && lock == 0) //判斷是否旋轉(zhuǎn)按鈕,同時(shí)判斷是否有按鈕鎖死{HAL_Delay(100);level = HAL_GPIO_ReadPin(encoder_port_A,encoder_left);       //把旋鈕另一端電平狀態(tài)記錄HAL_Delay(13);  //延時(shí)if(!HAL_GPIO_ReadPin(encoder_port_A, encoder_right))     //去抖{if(level == 0){key = 1;  //右轉(zhuǎn)}else{key = 2;  //左轉(zhuǎn)}count = 0; //初始鎖死判斷計(jì)數(shù)器while(!HAL_GPIO_ReadPin(encoder_port_A, encoder_right) && count < 60000)  //等待放開旋鈕,同時(shí)累加判斷鎖死{count++;lock = 1;HAL_Delay(200);}}}if(!HAL_GPIO_ReadPin(encoder_port_A,encoder_down) && lock == 0){HAL_Delay(20);if(!HAL_GPIO_ReadPin(encoder_port_A,encoder_down))    //消抖{key=3;}}return key;
}
  • encoder.h中添加代碼:
#ifndef _ENCODER_H_
#define _ENCODER_H_#include "main.h"
#include "tim.h"#define encoder_port_A    GPIOA#define encoder_left      GPIO_PIN_6	//定義IO接口,DT, 旋鈕左轉(zhuǎn)
#define encoder_right     GPIO_PIN_5	//定義IO接口,CLK,旋鈕右轉(zhuǎn)
#define encoder_down      GPIO_PIN_7	//定義IO接口,SW, 旋鈕按下uint8_t ENCODER_READ(void);     //接口讀取值#endif
  • 在主函數(shù)main.c中添加代碼:
/*** @brief  The application entry point.* @retval int*/
int main(void)
{/* USER CODE BEGIN 1 */int b;/* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init *//* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();MX_TIM3_Init();MX_USART1_UART_Init();/* USER CODE BEGIN 2 */printf("encoder is ready:\r\n");/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){/* USER CODE END WHILE *//* USER CODE BEGIN 3 */b = ENCODER_READ(); //讀出旋轉(zhuǎn)器編碼器值HAL_Delay(1000);  if(b==1){printf("編碼器右轉(zhuǎn)\r\n");}if(b==2){printf("編碼器左轉(zhuǎn)\r\n");}if(b==3){printf("編碼器按下\r\n");}}/* USER CODE END 3 */
}

五、實(shí)驗(yàn)結(jié)果

在這里插入圖片描述

謝謝閱讀!!!

在這里插入圖片描述

http://www.risenshineclean.com/news/55101.html

相關(guān)文章:

  • 現(xiàn)成的手機(jī)網(wǎng)站做APP最近實(shí)時(shí)熱點(diǎn)事件
  • 培訓(xùn)網(wǎng)站建設(shè)永州網(wǎng)站seo
  • 網(wǎng)站建設(shè)入門教程對(duì)網(wǎng)絡(luò)營(yíng)銷的認(rèn)識(shí)800字
  • 網(wǎng)頁(yè)工具東莞優(yōu)化排名公司
  • 農(nóng)業(yè)網(wǎng)站建設(shè)方案 ppt搜索推廣平臺(tái)
  • 有什么網(wǎng)站是做平面設(shè)計(jì)的百度搜索的優(yōu)勢(shì)
  • 真人性做爰video網(wǎng)站公司網(wǎng)站建站要多少錢
  • 深圳做積分商城網(wǎng)站建設(shè)怎么制作鏈接網(wǎng)頁(yè)
  • 深圳分銷網(wǎng)站設(shè)計(jì)電話企業(yè)網(wǎng)站建設(shè)
  • 公司建一個(gè)網(wǎng)站嗎搜什么關(guān)鍵詞能搜到好片
  • 廣州知名網(wǎng)站建設(shè)哪家公司好seo文案范例
  • 產(chǎn)品網(wǎng)站建設(shè)軟文推廣營(yíng)銷平臺(tái)
  • 家里電腦做網(wǎng)站服務(wù)器seo推廣怎么樣
  • 網(wǎng)站開發(fā)什么意思徐州seo公司
  • 河南新鄉(xiāng)市建設(shè)銀行網(wǎng)站系統(tǒng)優(yōu)化軟件排行榜
  • 競(jìng)價(jià)網(wǎng)站做seo教育培訓(xùn)機(jī)構(gòu)官網(wǎng)
  • 武漢網(wǎng)絡(luò)推廣有哪些公司鄂爾多斯seo
  • 湛江找人做網(wǎng)站排名球隊(duì)排名榜實(shí)時(shí)排名
  • 網(wǎng)站建設(shè)中 html營(yíng)銷課程
  • 做網(wǎng)站如何設(shè)計(jì)數(shù)據(jù)庫(kù)個(gè)人網(wǎng)頁(yè)設(shè)計(jì)作品模板
  • wordpress .htaccess 規(guī)則seo代碼優(yōu)化工具
  • 門戶網(wǎng)站功能清單萬(wàn)網(wǎng)域名查詢注冊(cè)商
  • 做的很好的黑白網(wǎng)站如何在百度上做產(chǎn)品推廣
  • 西寧網(wǎng)站設(shè)計(jì)公司seo外鏈平臺(tái)
  • 網(wǎng)站 國(guó)外空間不需要icp許可證嗎推廣引流吸引人的文案
  • 成都網(wǎng)站推廣排名怎么把自己的網(wǎng)站發(fā)布到網(wǎng)上
  • 官方網(wǎng)站建設(shè)報(bào)價(jià)怎么讓百度快速收錄網(wǎng)站
  • 古冶區(qū)城鄉(xiāng)建設(shè)局網(wǎng)站seo技術(shù)培訓(xùn)江門
  • 旅游網(wǎng)站首頁(yè)圖片最近的新聞大事10條
  • 加關(guān)鍵詞的網(wǎng)站黃頁(yè)污水