中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        R/C伺服電機(jī)FPGA

        作者: 時(shí)間:2023-12-22 來源:電子森林 收藏

        適用于控制R / C。 

        本文引用地址:http://www.antipu.com.cn/article/202312/454182.htm

        R / C伺服(“遙控”)由一個(gè)電機(jī),一些電子設(shè)備和一組裝在一個(gè)小盒子中的齒輪組成。單軸從伺服器出來。您可以通過向伺服器發(fā)送脈沖來精確控制軸的旋轉(zhuǎn)角度。軸旋轉(zhuǎn)角度限制為大約270度(它不能旋轉(zhuǎn)一整圈,而只能旋轉(zhuǎn)3/4圈)。

        這是一個(gè)伺服器的圖片(已被咬住,但已說明了我們的目的)。

        有用的信息鏈接包括:

        • RC伺服控制
        • RC飛機(jī)伺服系統(tǒng)使用指南
        • 遙控伺服器101

        R / C Servos用于:

        • 在遙控模型中(汽車,飛機(jī)…)。
        • 在機(jī)器人技術(shù)中。

        伺服系統(tǒng)有3條線:

        • 黑色:地面。
        • 紅色:電源(+ 5V)。
        • 白色:旋轉(zhuǎn)控制(使用PWM)。

        白線上的PWM控制脈沖長度需要在1ms到2ms之間。
        1.5ms的脈沖使軸在其旋轉(zhuǎn)范圍的中間旋轉(zhuǎn)。
        即使不需要更改角度位置,也需要定期發(fā)送新脈沖(每10到20ms),否則伺服將停止嘗試保持該脈沖。

        讓我們以8位分辨率(256步,從0到255)控制一個(gè)伺服器。這意味著我們需要產(chǎn)生一個(gè)1ms(0)到2ms(255)的脈沖,分辨率為1ms / 256 = 3.9μs。
        分鐘
        使用25MHz時(shí)鐘(周期為40ns),第一步是對(duì)時(shí)鐘進(jìn)行分頻,以產(chǎn)生周期的“滴答聲”,使其盡可能接近3.9μs。

        parameter ClkDiv = 98;    // 25000000/1000/256 = 97.56 
        reg [6:0] ClkCount;reg ClkTick;
        always @(posedge clk) ClkTick <= (ClkCount==ClkDiv-2);
        always @(posedge clk) if(ClkTick) ClkCount <= 0; 
        else ClkCount <= ClkCount + 1;

        使用“ ClkTick”,我們實(shí)例化一個(gè)12位計(jì)數(shù)器,該計(jì)數(shù)器在每個(gè)滴答處遞增。

        reg [11:0] PulseCount;
        always @(posedge clk) if(ClkTick) PulseCount <= PulseCount + 1;

        每個(gè)滴答持續(xù)3.9μs,因此256個(gè)滴答持續(xù)1ms,12位計(jì)數(shù)器“ PulseCount”每16ms翻轉(zhuǎn)一次。正是我們需要定期產(chǎn)生新的脈沖。

        產(chǎn)生PWM脈沖
        當(dāng)“ PulseCount”等于0時(shí),我們開始每個(gè)脈沖。當(dāng)“ PulseCount”
        在256和511之間時(shí),我們結(jié)束每個(gè)脈沖。這將在1ms和2ms之間產(chǎn)生脈沖。

        假設(shè)“ RCServo_position”是8位位置值(從0到255),我們?cè)谄淝懊孢B接一個(gè)“ 0001”以創(chuàng)建一個(gè)范圍為256 ot 511的12位值。最后,我們將這12位與“ PulseCount”進(jìn)行比較以產(chǎn)生脈沖。

        reg RCServo_pulse;
        always @(posedge clk) RCServo_pulse = (PulseCount < {4'b0001, RCServo_position});


        關(guān)鍵詞: FPGA 伺服電機(jī)

        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉