女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

步進電機和限位開關的加速度

454398 ? 來源:wv ? 2019-10-23 10:13 ? 次閱讀

步驟1:使用的資源

今天我們將使用以下組件列表進行組裝:

?直徑8mm,間距2mm的梯形主軸

?直徑8mm間距8mm的梯形主軸

?8x2主軸的法蘭螺母

?8x8主軸的法蘭螺母

?8毫米直徑主軸的軸承

?10mm直徑圓柱線性導軌

?10mm導軌的圓柱滾子軸承

?10mm圓柱導軌的支架

?NEMA 17電機

?軸聯(lián)軸器

?Arduino Mega

?驅(qū)動程序DRV8825

?4x4矩陣鍵盤

?顯示諾基亞5110

?各種各樣塑料零件

?螺栓和螺母

?木底座

?外部電源12V

?紅外傳感器

第2步:演示

我們今天的大會非常簡單類似于帶有主軸和步進電機的Arduino Uno視頻

我需要更改什么?這次,我選擇了Arduino Mega來使用路線終點開關,您可以在項目的右側(cè)看到該路線終點開關,因為行程終點開關用于最快的主軸中。每個菜單都在ATmega中該程序的源代碼中進行了說明。在視頻中的演示中,我們使引擎移動了5厘米,以顯示加速和減速情況。然后,它返回15厘米并觸摸行程開關的終點,從而停止發(fā)動機。

步驟3:航向開關的終點

它是做什么用的?限位開關是通過停止發(fā)動機運動來限制路線的機械元件。它們用于機器組裝中以保護機械性能。在CNC機床中,鍵還用作參考點,例如,將坐標軸歸零。市場上有幾種類型的鍵,其中包括:按鈕,紅外傳感器,電容傳感器等。

在我們的組裝件中,我們使用紅外傳感器,如上圖所示。

步驟4:示例代碼

在arduino上有一個源代碼,其中顯示了Setup(設置)以及如何在行程開關和加速結束時移動步進電機。這是lib StepMotor,它是我制作的一個庫,可以操縱8825、4988和TB6600驅(qū)動程序,并允許您播放更大的引擎,例如Nema 23或34。

然后,我們配置驅(qū)動器引腳,每毫米及周圍的步距以及微速。我還以最大和最小速度配置節(jié)氣門運動,并激活發(fā)動機動力輸出端口。最后,限位開關銷被激活。

#include

DRV8825 d1;

void setup() {

//Configuracao dos pinos do driver

d1.pinConfig(2,3,4,5,6,7,8,9);

//configuracao de passos por milimetro

d1.stepPerMm(100);

//configuracao de passos por volta

d1.stepPerRound(200);

//configuracao de micropasso

d1.stepConfig(1);

//configuracao do movimento (aceleracao, velocidade maxima, velocidade minima)

// tempos em uSegundos

// Acelera??o é o decremento de tempo a cada novo passo

d1.motionConfig(20,1500,5000);

//reseta o driver

d1.reset();

//ativa as portas saídas de potencia do motor

d1.enable(HIGH);

//Pinos das chaves de fim de curso e se ativam em nivel alto ou baixo

// d1.endstopConfig(min,max,HIGH ou LOW);

d1.endstopConfig(10,11,HIGH);

}

下面是發(fā)動機代碼示例。

void loop() {

//move o motor 100mm em direcao crescente

d1.motorMoveTo(100, HIGH);

//aguarda 1 segundo

delay(1000);

//move o motor 100mm em direcao decrescente

d1.motorMoveTo(100, LOW);

//aguarda 1 segundo

delay(1000);

}

步驟5:課程切換結束

代碼:在我們的代碼中,我們將采取行動

bool DRV8825::canGo(bool direction)

{

if(LVL) // se: as chaves de fim de curso ativam em nível alto

{

if(direction && !digitalRead(EMAX)) //se: move positivamente E o fim de curso máximo N?O está ativado

return true;

if(!direction && !digitalRead(EMIN)) //se: N?O move positivamente E o fim de curso mínimo N?O está ativado

return true;

}

else //sen?o: as chaves de fim de curso ativam em nível baixo

{

if(direction && digitalRead(EMAX)) //se: move positivamente E o fim de curso máximo está ativado

return true;

if(!direction && digitalRead(EMIN)) //se: N?O move positivamente E o fim de curso mínimo está ativado

return true;

}

return false;

}

步驟6:加速

在一定的時間間隔內(nèi),通過高低脈沖控制電動機的步進。

為了使發(fā)動機不以最大速度直接啟動,我們使用加速度。

加速會改變每一步的脈沖時間以改變發(fā)動機轉(zhuǎn)速,然后逐漸增加到最大速度以加速,然后逐漸減小直到停止減速。

加速可以通過多種方式實現(xiàn)。

我們創(chuàng)建的代碼示例了步進電機中加速度的使用。

步驟7:加速度-代碼

簡單的加速度代碼示例。

在此代碼中,脈沖時間在每一步都由用戶選擇的值減少,直到中途或連續(xù)l發(fā)動機達到最大速度,即設置的最短脈沖時間。

void DRV8825::motorMoveTo(double distance, bool direction) //(distancia, dire??o, tempo da largura do pulso em microssegundos (metade do tempo em nível alto, metade em nível baixo))

{

digitalWrite(DIR, direction);

long accSpeed = SMIN;

long steps = distance*SPM;

long stepsToStop;

bool flag = true;

for(long i = 0; i 《 steps; i++){

if(i 《 (steps)/2){

if(accSpeed》SMAX){

if(canGo(direction)){

digitalWrite(STP, HIGH);

delayMicroseconds(accSpeed/2);

digitalWrite(STP, LOW);

delayMicroseconds(accSpeed/2);

}

else{

delayMicroseconds(accSpeed);

}

accSpeed = accSpeed - ACC;

}

這時,將存儲電動機為達到該路徑的最大速度而執(zhí)行的脈沖量。

else

{

if(flag){

stepsToStop = i;

flag = false;

}

if(canGo(direction)){

digitalWrite(STP, HIGH);

delayMicroseconds(SMAX/2);

digitalWrite(STP, LOW);

delayMicroseconds(SMAX/2);

}

else{

delayMicroseconds(SMAX);

}

}

}

此數(shù)量將與達到行程結束之前用于發(fā)動機減速的量相同。

要使發(fā)動機減速,脈沖時間會增加

else

{

if(i 《 steps-stepsToStop){

if(canGo(direction)){

digitalWrite(STP, HIGH);

delayMicroseconds(SMAX/2);

digitalWrite(STP, LOW);

delayMicroseconds(SMAX/2);

}

else{

delayMicroseconds(SMAX);

}

}

else

{

if(canGo(direction)){

digitalWrite(STP, HIGH);

delayMicroseconds(accSpeed/2);

digitalWrite(STP, LOW);

delayMicroseconds(accSpeed/2);

}

else{

delayMicroseconds(accSpeed);

}

accSpeed = accSpeed + ACC;

}

}

}

}

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 步進電機
    +關注

    關注

    152

    文章

    3157

    瀏覽量

    149130
  • 限位開關
    +關注

    關注

    0

    文章

    49

    瀏覽量

    4988
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    實時生成步進電機速度曲線

    一種用于步進電機加速度的新算法可以實現(xiàn)速度曲線的實時參數(shù)化和計算。該算法可以在低端微控制器上運行,只使用簡單的定點算術運算并且不使用數(shù)據(jù)表。它以恒定的
    發(fā)表于 05-14 15:09

    加速度傳感器的應用與選購技巧

    加速度傳感器是一種能夠測量加速力的電子設備,其核心工作原理基于牛頓的第二運動定律。當傳感器感受到外部加速度時,其內(nèi)部的電子器件會發(fā)生變化,進而產(chǎn)生與加速度大小成比例的輸出信號。這種信號
    的頭像 發(fā)表于 03-17 16:47 ?364次閱讀
    <b class='flag-5'>加速度</b>傳感器的應用與選購技巧

    LSM6DS3TRC讀取加速度數(shù)據(jù)不對是哪里的問題?

    LSM6DS3TRC初始化后,讀取加速度(理論應是 0,0,1000),得出的加速度慢慢上升變化,讀取幾十個(每次讀取都是判斷XDLA位是否為1)后的加速度值才是正確的。這個什么原因?如附圖是慢慢變化上升的
    發(fā)表于 03-13 06:10

    網(wǎng)絡筆記分享-實時生成步進電機速度曲線

    一種用于步進電機加速度的新算法可以實現(xiàn)速度曲線的實時參數(shù)化和計算。該算法可以在低端微控制器上運行,只使用簡單的定點算術運算并且不使用數(shù)據(jù)表。它以恒定的
    發(fā)表于 03-04 21:17

    加速度傳感器的選型?主要看這八大參數(shù)!

    加速度傳感器作為測量物體運動狀態(tài)的重要工具,被廣泛應用于智能手機、可穿戴設備、汽車安全系統(tǒng)、航空航天等多個領域。為了確保所選加速度傳感器能夠滿足特定應用需求,了解其關鍵選型參數(shù)至關重要。本文將詳細
    的頭像 發(fā)表于 01-23 18:02 ?1258次閱讀
    <b class='flag-5'>加速度</b>傳感器的選型?主要看這八大參數(shù)!

    加速度傳感器的工作原理

    本文的關鍵要點 ?“加速度傳感器”是用來檢測單位時間內(nèi)的速度(即加速度)的傳感器。 ?從原理方面看,加速度傳感器是通過檢測因移動或傾斜而引發(fā)的與彈簧連接的質(zhì)量塊的位置變化來獲得
    的頭像 發(fā)表于 01-08 16:19 ?1044次閱讀
    <b class='flag-5'>加速度</b>傳感器的工作原理

    adxl345檢測振動加速度信號,在加速度為0處,有±1g的跳動怎么解決?

    分別在800和400Hz采樣率下,采集振動加速度信號,信號頻率15.915Hz±1%,幾乎每次在加速度為0的時候都會有±1g的數(shù)值跳動(在任何采樣率和測量范圍下都有這個問題),請問這該怎么解決? 器件不使用中斷,全分辨率,±16g
    發(fā)表于 12-19 08:50

    MEMS加速度計的工作原理是什么

    MEMS加速度計的工作原理主要基于牛頓第二定律,即力等于質(zhì)量乘以加速度。以下是對其工作原理的介紹: 一、核心部件與結構 MEMS加速度計的核心部件包括一個微小的質(zhì)量塊、彈性元件(如彈簧梁)以及檢測器
    的頭像 發(fā)表于 11-20 10:09 ?2096次閱讀

    什么是AEC-Q102的恒定加速度測試?

    恒定加速度測試是一種關鍵的實驗性方法,用于評估電子元件在模擬高速動態(tài)條件下的性能。這種測試通過施加恒定的加速度來評估元件的結構強度和機械穩(wěn)定性,旨在揭示那些在標準測試中可能未被發(fā)現(xiàn)的潛在缺陷。這對
    的頭像 發(fā)表于 11-06 14:33 ?638次閱讀
    什么是AEC-Q102的恒定<b class='flag-5'>加速度</b>測試?

    加速度傳感器的應用

    加速度傳感器是一種能夠測量加速度的傳感器。通常由質(zhì)量塊、阻尼器、彈性元件、敏感元件和適調(diào)電路等部分組成。傳感器在加速過程中,通過對質(zhì)量塊所受慣性力的測量,利用牛頓第二定律獲得加速度值。
    的頭像 發(fā)表于 09-30 08:08 ?1163次閱讀
    <b class='flag-5'>加速度</b>傳感器的應用

    物聯(lián)網(wǎng)系統(tǒng)中加速度測試方案的實現(xiàn)_加速度傳感器分析

    01 物聯(lián)網(wǎng)系統(tǒng)中為什么要使用加速度傳感器 在物聯(lián)網(wǎng)系統(tǒng)中,使用加速度傳感器的原因主要基于加速度傳感器所具備的功能特性及其在物聯(lián)網(wǎng)應用中的重要作用。以下是對這一問題的詳細解析: 加速度
    的頭像 發(fā)表于 09-26 14:19 ?1093次閱讀
    物聯(lián)網(wǎng)系統(tǒng)中<b class='flag-5'>加速度</b>測試方案的實現(xiàn)_<b class='flag-5'>加速度</b>傳感器分析

    EPSON工業(yè)級加速度計選型

    愛普生加速度計(Accelerometers)是一種工業(yè)級三軸輸出壓電式加速度傳感器,采用具有專利技術的雙音叉式石英傳感器元件和Quarts光刻技術,通過壓電效應來計算出諸如此類的內(nèi)容物體運動的方向
    的頭像 發(fā)表于 09-19 15:31 ?587次閱讀
    EPSON工業(yè)級<b class='flag-5'>加速度</b>計選型

    步進電機伺服控制系統(tǒng)的作用

    控制系統(tǒng)的主要作用是實現(xiàn)對電機的精確控制,包括位置、速度加速度的控制。具體來說,它可以實現(xiàn)以下幾個方面的作用: 1.1 精確控制位置 步進電機
    的頭像 發(fā)表于 09-04 09:46 ?1100次閱讀

    e2studio開發(fā)三軸加速度計LIS2DW12(2)----基于中斷信號獲取加速度數(shù)據(jù)

    本文將介紹實時獲取和處理加速度數(shù)據(jù)。程序的核心流程包括初始化硬件接口、配置加速度計的參數(shù),以及通過輪詢檢查中斷信號來不斷讀取加速度數(shù)據(jù)。
    的頭像 發(fā)表于 08-09 15:43 ?871次閱讀
    e2studio開發(fā)三軸<b class='flag-5'>加速度</b>計LIS2DW12(2)----基于中斷信號獲取<b class='flag-5'>加速度</b>數(shù)據(jù)

    步進電機控制器怎么調(diào)速度

    引言 步進電機是一種將電脈沖信號轉(zhuǎn)換為角位移的電機,具有控制精度高、響應速度快、結構簡單等優(yōu)點。在自動化設備、機器人、數(shù)控機床等領域得到了廣泛應用。
    的頭像 發(fā)表于 06-12 09:17 ?3472次閱讀