国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

英創信息技術工控主板PWM應用于步進電機控制介紹

英創信息技術 ? 來源:英創信息技術 ? 作者:英創信息技術 ? 2020-02-03 09:20 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

工業控制中,許多場合都可以看到電機的身影。特別是步進電機,以其精度高,運行可靠等優勢,廣泛地應用于數字控制系統中。像這一類步進電機的控制,通常都是使用的脈沖信號來實現的。當步進電機接收到一個脈沖信號,會轉動一個固定的角度,所以可以通過控制脈沖的個數來控制轉動的角度,從而實現精確定位的目的;同時可以通過控制脈沖頻率來控制電機轉動的速度,從而實現控制速度的目的。

英創嵌入式工控板提供了兩種控制步進電機的方法給用戶,第一種方法是使用GPIO發出脈沖來實現控制電機的目的,根據需要轉動的角度和速度,通過調用GPIO的API函數來發出相應個數和頻率的脈沖就能夠達到這一目的。但是如果控制電機的實時性要求比較高,需要達到10ms以內的精度,那么第一種方法可能就不能滿足要求了,因為控制GPIO是通過了操作系統來執行的,這樣程序就涉及到了系統調度等因素,在實時性方面肯定就不能滿足太高的需求。于是英創公司推出了另外一種實時性較高的方法,即使用PWM脈沖來控制電機。

英創工控主板EM928x系列上共有4路PWM輸出,其最高輸出頻率可達12MHz,但如果希望保證一定精 度的占空比(1%的精度),則輸出最高頻率只能到240KHz。而EM335x系列上也有4路PWM輸出,其最高輸出頻率可達50MHz,但如果希望保證一定精度的占空比(1% 的精度),則輸出最高頻率只能到1MHz。從頻率和占空比上看,應該是完全滿足控制速度的要求,但是如果要實現精確定位的功能,還需要控制脈沖的個數,所以英創公司修改了PWM脈沖驅動,在原來的基礎上增加了對PWM波個數控制和計數的功能,使應用程序能控制發出的脈沖個數,從而精確步進電機的動作。

本文以下部分將介紹這一新增加的功能以及在應用程序中的調用方法。

實現這一功能是通過利用CPU內部的計數器來記錄PWM脈沖的個數,當達到預定的值,就產生中斷將PWM脈沖停止,這樣就能夠對PWM脈沖的計數并且產生指定個數的脈沖,這一部分的功能英創公司已經在驅動中完成,用戶只需要在應用程序中通過接口調用,就可以啟用、停止計數功能,并且實時查詢脈沖數。支持這一功能的PWM波有兩路:PWM1和PWM2,能產生的最小波形數為2。對PWM的操作可歸為2種基本操,在原有的普通使能和停止功能基礎上加入了計數功能的操作,所對應的命令參數,定義如下:

#define EM9280_COUNT_START 12//啟動帶計數功能的PWM脈沖輸出
#define EM9280_COUNT_STOP 13//強制停止帶計數功能的PWM脈沖輸出

接下來來看頭文件中定義的PWM 的數據結構,包括頻率、占空比以及極性等參數:

struct pwm_config_info
{
unsigned int cmd;//= 0, 1, 2, ....
unsigned int freq;/* in Hz */
unsigned int duty;/* in % */
unsigned int polarity;
unsigned int count;
};

cmd表示指令:就是上面說的兩種操作。
freq表示輸出的脈沖頻率,單位為 Hz。Freq 的取值范圍 和板卡的最高支持頻率有關。
duty表示輸出脈沖的占空比,單位為%。
Duty的取值范圍:1 – 99。
Polarity表示輸出脈沖的極性,選擇 0 或者 1。
count是新加入的參數,表示需要生成的PWM波的個數。

進行PWM操作時,首先打開相應的設備節點文件,然后再調用 write( )函數進行 pwm 的設置、啟動計數等操作,以下為啟動計數功能的相關應用代碼:

int PWM_COUNT_Start(int fd, int freq, int duty, unsigned int count)
{
int rc;
struct pwm_config_info conf;
conf.cmd = EM9280_COUNT_START;
conf.freq = freq;
conf.duty = duty;
conf.polarity = POLARITY;
conf.count = count;
rc = write(fd, &conf, sizeof(struct pwm_config_info));
return rc;
}

這樣就只需要調用PWM_COUNT_Start()這個函數,并將參數帶入即可,我們就以產生5個占空比為1KHZ的波形為例:

int npwm = 1;
int fd;
char device[32];
unsigned int freq = 1000;
unsigned int duty = 50;
unsigned int count = 5;
sprintf( device, '/dev/em9280_pwm%d', npwm );
fd = open(device, O_RDWR);
if ( fd < 0)
{
printf('can not open /dev/em9280_pwm%d device file!\n', npwm);
return -1;
}
printf( 'Open %s\n', device );
PWM_COUNT_Start( fd, freq, duty, count );

在脈沖輸出的過程中,可以調用read函數讀取已經輸出的脈沖數,如果到達某一個值的時候需要停止輸出,就調用write( )函數進行pwm的停止,詳細的代碼如下:

int PWM_COUNT_Stop(int fd )
{
int rc;
struct pwm_config_info conf;
memset( &conf, 0, sizeof(struct pwm_config_info));
conf.cmd = EM9280_COUNT_STOP;
rc = write(fd, &conf, sizeof(struct pwm_config_info));
return rc;
}
//讀取已發送脈沖數
read(fd, &buf, sizeof(buf));
if( buf>=5 )//當輸出脈沖數到達某個值則停止
PWM_COUNT_Stop( fd );

生成5個占空比為1KHz的波形的程序運行的結果如下圖:

通過對PWM脈沖計數功能的實現,就可以對電機進行精確的控制了,詳細的代碼請參考光盤中的例程。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式主板
    +關注

    關注

    7

    文章

    6107

    瀏覽量

    37081
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    DRV8825步進電機控制器IC:設計與應用詳解

    打印機、掃描儀和其他自動化設備應用提供了集成的電機驅動解決方案。 文件下載: drv8825.pdf 一、DRV8825的特性亮點 1. 微步進驅動能力 DRV8825采用PWM步進
    的頭像 發表于 01-11 11:45 ?1061次閱讀

    步進電機控制原理

    步進電機是數字控制電機,它將脈沖信號轉變成角位移,即給一個脈沖信號,步進電機就轉動一個角度,因此
    發表于 01-04 08:25

    如何通過PWM脈沖控制電機?

    到原來的70%。 總之,單片機通過PWM脈沖控制電機轉速,可以實現精準、高效、智能化的電機控制,被廣泛
    發表于 11-28 06:58

    國產力量鑄就數字基石:飛騰工控主板賦能多領域智能化升級

    當前,信息技術應用創新產業進入規?;涞氐年P鍵階段,硬件基礎設施的國產化、自主化已從可選變為必選。作為工業控制、智能終端的核心硬件,工控主板直接關系到金融、政務、能源等關鍵領域的系統穩
    的頭像 發表于 11-27 09:04 ?406次閱讀
    國產力量鑄就數字基石:飛騰<b class='flag-5'>工控</b><b class='flag-5'>主板</b>賦能多領域智能化升級

    3A6000四核龍芯工控主板,推動信工控深度融合

    當今信科技快速發展,技術的不斷演進和市場需求的變化,在工控領域也在進行源源不斷地創新,其中最引人注目的是國產龍芯主板在其中的發展應用。
    的頭像 發表于 11-14 09:10 ?381次閱讀

    工控主板的設計特性

    在工業自動化、智能裝備、物聯網等領域,工控主板作為核心控制單元,其設計質量直接決定了整個系統的穩定性、可靠性與運行效率。與消費級主板不同,工控
    的頭像 發表于 11-13 08:58 ?470次閱讀
    <b class='flag-5'>工控</b><b class='flag-5'>主板</b>的設計特性

    新時代的硬核基石:龍芯工控主板助力信產業新基建

    在數字技術重塑產業格局的今天,信產業已成為保障國家信息技術安全的核心戰略。作為工業自動化系統的大腦,工控主板的自主可控程度直接決定信創新基
    的頭像 發表于 11-05 13:54 ?295次閱讀

    工控主板的三大核心技術

    在工業自動化的浪潮中,工控主板如同“工業大腦”的核心載體,支撐著各類設備的穩定運行與智能升級。相較于消費級主板,工控主板需在復雜工況下實現長
    的頭像 發表于 10-16 11:05 ?380次閱讀

    基于MT6835磁編碼器IC的步進電機全閉環伺服控制策略

    步進電機作為一種常見的執行元件,因其結構簡單、控制方便等優點被廣泛應用于工業自動化、機器人、醫療設備等領域。然而,傳統的開環控制方式存在失步
    的頭像 發表于 08-27 17:55 ?1148次閱讀

    智慧新核心,龍芯主板助力信體系再升級

    信息技術飛速發展的當下,信體系的自主可控與創新升級已成為國家戰略層面的關鍵任務。作為信產業發展的重要基礎硬件支撐,國產工控主板正發揮著
    的頭像 發表于 08-11 09:14 ?702次閱讀

    MT6835磁編芯片:開啟閉環步進電機控制系統高精度、高穩定性新時代

    在工業自動化的浪潮中,步進電機作為一種將電脈沖信號轉換為角位移或線位移的執行機構,被廣泛應用于各種自動化設備中。而閉環步進電機
    的頭像 發表于 07-28 17:30 ?747次閱讀

    飛騰主板為信產業發展提高硬實力

    信息技術飛速發展的當下,信產業已成為我國實現科技自立自強、保障國家信息安全的關鍵領域。信,即信息技術應用創新,其核心目標是實現
    的頭像 發表于 07-22 18:20 ?713次閱讀

    科普|信是什么?一文讀懂“信息技術應用創新”戰略

    什么是信?信,即“信息技術應用創新”,是國家推動IT系統自主可控、安全可控的重要戰略工程。它不僅是技術層面的創新,更承載著保障國家網絡安全、推動產業升級和實現數字主權的重任。簡單來
    的頭像 發表于 06-13 10:06 ?8336次閱讀
    科普|信<b class='flag-5'>創</b>是什么?一文讀懂“<b class='flag-5'>信息技術</b>應用創新”戰略

    數據采集卡與步進電機

    本文介紹步進電機的工作原理,以及如何使用數據采集卡控制步進電機動作。
    的頭像 發表于 05-26 15:53 ?1413次閱讀
    數據采集卡與<b class='flag-5'>步進</b><b class='flag-5'>電機</b>

    浪潮下,國產主板有什么新的發展機遇?

    信息技術應用創新浪潮的推動下,國產主板迎來了諸多新的發展機遇。信產業旨在實現信息技術領域的自主可控,這一戰略目標為國產主板的發展提供了廣
    的頭像 發表于 05-09 09:24 ?728次閱讀
    信<b class='flag-5'>創</b>浪潮下,國產<b class='flag-5'>主板</b>有什么新的發展機遇?