找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1428|回復: 0
打印 上一主題 下一主題
收起左側(cè)

arduino 步進電機

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:279900 發(fā)表于 2018-1-28 15:15 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
步進電機是將脈沖信號轉(zhuǎn)換成機械運動的一種特殊電機。步進電機在使用時不需要額外的反饋,這是因為除非失步,否則步進電機每次轉(zhuǎn)動時的角度已知的,由于它的角度位置已知就能精確控制電機運動的位置。/*  步進電機速度控制示例 本示例程序用于驅(qū)動非極性步進電機。電機的接口連接至<acronym class="c2c-text-hover" data-hasqtip="6" oldtitle="Arduino,是一個開放源代碼的單芯片微控制器,它使用了Atmel AVR單片機,采用了開放源代碼的軟硬件平臺,建構(gòu)于簡易輸出/輸入(simple I/O)界面板,并且具有使用類似Java、C語言的Processing/Wiring開發(fā)環(huán)境。" title="" style="box-sizing: border-box;">Arduino的8至11號端口變阻器連接至模擬端口A0電機將沿著順時針方向旋轉(zhuǎn),電位器的模擬量越高,步進電機的轉(zhuǎn)速就越快。因為setSpeed()函數(shù)將設定每一步序的時間間隔。你可能會發(fā)現(xiàn)當電位器模擬量太低時,電機將會停止旋轉(zhuǎn)。*/#include <Stepper.h>const int stepsPerRevolution = 200;Stepper myStepper(stepsPerRevolution, 8,9,10,11);            int stepCount = 0;void setup(){}void loop(){  int sensorReading = analogRead(A0);  int motorSpeed = map(sensorReading, 0, 1023, 0, 100);  if (motorSpeed > 0){    myStepper.setSpeed(motorSpeed);    myStepper.step(stepsPerRevolution/100);  } }



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表