精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

PWM脈沖的產生與使用

laidenongfhs ? 來源:中泰PLC自動化教學 ? 2023-12-29 14:19 ? 次閱讀

PWM脈沖是一種占空比和周期都可調的脈沖。

PWM脈沖的周期范圍為10~65535μs或2~65535ms,在設置脈沖周期時,如果周期小于兩個時間單位,系統會默認周期值為兩個時間單位;PWM脈寬時間為0~65535μs或0~65535ms,若設定的脈寬等于周期(即占空比為100%),輸出一直接通,設定脈寬等于0(即占空比為0%),輸出斷開。

1.波形改變方式

PWM脈沖的波形改變方式有兩種:同步更新和異步更新。同步更新。如果不需改變時間基準,則可以使用同步更新方式。利用同步更新,信號波形特性的變化發生在周期邊沿,使波形能平滑轉換。異步更新。如果需要改變PWM發生器的時間基準,就要使用異步更新。異步更新會使PWM功能被瞬時禁止, PWM信號波形過渡不平滑,這會引起被控設備的振動。

由于異步更新生成的PWM脈沖有較大的缺陷,一般情況下盡量使用脈寬變化、周期不變的PWM脈沖,這樣可使用同步更新。

2.產生PWM脈沖的編程方法

要讓高速脈沖發生器產生PWM脈沖,可按以下步驟編程。根據需要設置控制字節SMB67(Q0.0)、SMB77(Q0.1)或SMB567(Q0.3)。根據需要設置脈沖的周期值和脈寬值。周期值在SMW68、SMW78或SMB568中設置,脈寬值在SMW70、SMW80或SMW570中設置。執行高速脈沖輸出PLS指令,系統則會讓高速脈沖發生器按設置從Q0.0、Q0.1或Q0.3端子輸出PWM脈沖。

3.產生PWM脈沖的編程實例

圖1所示是一個產生PWM脈沖的程序,其實現的功能是:讓PLC從Q0.0端子輸出PWM脈沖,要求PWM脈沖的周期固定為5s,初始脈寬為0.5s,每周期脈寬遞增0.5s,當脈寬達到4.5s后開始遞減,每周期遞減0.5s,直到脈寬為0。以后重復上述過程。

5007de3c-a610-11ee-8b88-92fbcf53809c.png

501a009e-a610-11ee-8b88-92fbcf53809c.png

圖1 產生PWM脈沖的程序

該程序由主程序、SBR_0子程序和INT_0、INT_1兩個中斷程序組成,SBR_0子程序為PWM初始化程序,用來設置脈沖控制字節和初始脈沖參數,INT_0中斷程序用于實現脈寬遞增,INT_1中斷程序用于實現脈寬遞減。由于程序采用中斷事件0(I0.0上升沿中斷)產生中斷,因此要將脈沖輸出端子Q0.0與I0.0端子連接,這樣在Q0.0端子輸出脈沖上升沿時,I0.0端子會輸入脈沖上升沿,從而觸發中斷程序,實現脈沖遞增或遞減。

程序工作過程說明如下。

在主程序中,PLC上電首次掃描時SM0.1觸點接通一個掃描周期,子程序調用指令執行,轉入執行SBR_0子程序。在子程序中,先將M0.0線圈置1,然后設置脈沖的控制字節和初始參數,再允許所有的中斷,最后執行高速脈沖輸出PLS指令,讓高速脈沖發生器按設定的控制字節和參數產生并從Q0.0端子輸出PWM脈沖,同時從子程序返回到主程序網絡2。由于網絡2、3指令條件不滿足,程序執行網絡4,M0.0常開觸點閉合(在子程序中M0.0線圈被置1),中斷連接ATCH指令執行,將INT_0中斷程序與中斷事件0(I0.0上升沿中斷)連接起來。當Q0.0端子輸出脈沖上升沿時,I0.0端子輸入脈沖上升沿,中斷事件0馬上發出中斷請求,系統響應該中斷而執行INT_0中斷程序。

在INT_0中斷程序中,ADD_I指令將脈沖寬度值增加0.5s,再執行PLS指令,讓Q0.0端子輸出完前一個PWM脈沖后按新設置的寬度輸出下一個脈沖,接著執行中斷分離DTCH指令,將中斷事件0與INT_0中斷程序分離,然后從中斷程序返回主程序。在主程序中,又執行中斷連接ATCH指令,又將INT_0中斷程序與中斷事件0連接起來,在Q0.0端子輸出第二個PWM脈沖上升沿時,又會產生中斷而再次執行INT_0中斷程序,將脈沖寬度值再增加0.5s,然后執行PLS指令讓Q0.0端子輸出的第三個脈沖寬度增加0.5s。以后INT_0中斷程序會重復執行,直到SMW70單元中的數值增加到4500。

當SMW70單元中的數值增加到4500時,主程序中的“SMW70|>=I|4500”觸點閉合,將M0.0線圈復位;網絡4中的M0.0常開觸點斷開,中斷連接ATCH指令無法執行,INT_0中斷程序也無法執行;網絡5中的M0.0常閉觸點閉合,中斷連接ATCH指令執行,將INT_1中斷程序與中斷事件0連接起來。當Q0.0端子輸出脈沖上升沿(I0.0端子輸入脈沖上升沿)時,中斷事件0馬上發出中斷請求,系統響應該中斷而執行INT_1中斷程序。

在INT_1中斷程序中,將脈沖寬度值減0.5s,再執行PLS指令,讓Q0.0端子輸出PWM脈沖寬度減小0.5s,接著執行中斷分離DTCH指令,分離中斷,然后從中斷程序返回主程序。在主程序中,又執行網絡5中的中斷連接ATCH指令,又將INT_1中斷程序與中斷事件0連接起來,在Q0.0端子輸出PWM脈沖上升沿時,又會產生中斷而再次執行INT_1中斷程序,將脈沖寬度值再減0.5s。以后INT_1中斷程序會重復執行,直到SMW70單元中的數值減小到0。

當SMW70單元中的數值減小到0時,主程序中的“SMW70|==I|0”觸點閉合,子程序調用指令執行,轉入執行SBR_0子程序,又進行PWM初始化操作。

以后程序重復上述工作過程,從而使Q0.0端子輸出先遞增0.5s、后遞減0.5s、周期為5s連續的PWM脈沖。

審核編輯:湯梓紅

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

    關注

    114

    文章

    5059

    瀏覽量

    212219
  • 編程
    +關注

    關注

    88

    文章

    3521

    瀏覽量

    93276
  • 波形
    +關注

    關注

    3

    文章

    375

    瀏覽量

    31376
  • PWM脈沖
    +關注

    關注

    0

    文章

    8

    瀏覽量

    7812
收藏 人收藏

    評論

    相關推薦

    pwm如何產生指定個數脈沖,而不占用cpu?

    pwm如何產生指定個數脈沖,而不占用cpu?目前我能想到的辦法是:1.定時器產生一次中斷,在中斷函數里計數。這種方法頻繁中斷,影響cpu效率。并且當所
    發表于 03-14 06:34

    DSP問題

    哪位大神可以分享下基于DSP2812的 PWM脈沖產生的可運行的代碼
    發表于 06-17 09:28

    pwm是什么 如何產生pwm

    pwm是什么,如何產生pwm?1、脈沖寬度調制(PWM)是一種對模擬信號電平進行數字編碼的方法,由于計算機不能輸出模擬電壓,只能輸出0 或5
    發表于 09-06 06:31

    如何用內部pwm直接產生脈沖

    之前寫過用內部pwm直接產生脈沖:這次寫的是用定時器,不推薦用延時來模擬。此程序結合了我之前發的矩陣按鍵程序,按鍵進行亮度調整。#include"lcd12864.h"#includeuchar code num1[]={" 1
    發表于 01-19 07:34

    使用FPGA產生一個連續的脈沖調制PWM信號

    1、使用FPGA產生脈沖調制(PWM)信號編寫程序,使用FPGA產生脈沖調制(PWM)信號,且信
    發表于 07-13 15:37

    脈沖波形的產生和整形

    脈沖波形的產生和整形:介紹矩形脈沖產生電路和脈沖整形電路。在脈沖整形電路中介紹了最常用施密特觸發
    發表于 09-16 08:59 ?121次下載

    用TPM2產生PWM和作脈沖寬度、周期測量

    用TPM2產生PWM和作脈沖寬度、周期測量:SPMC75F2413A的TPM2除具有一般的定時/計數的功能外,還有兩路的PWM輸出/兩路的捕獲功能,因此增強和擴展了TPM2在一般領域中
    發表于 09-19 11:42 ?38次下載

    脈沖波形的產生與變換

    脈沖波形的產生與變換1.學習利用集成邏輯門、555定時器設計脈沖信號產生電路。2.掌握影響脈沖波形參數的定時元件參數的計算方法。3.學習
    發表于 12-09 18:24 ?0次下載

    脈沖寬度控制pwm的工作原理

    脈沖寬度控制pwm的工作原理和模擬電路PWM的實現  1 脈沖
    發表于 08-01 09:50 ?7312次閱讀
    <b class='flag-5'>脈沖</b>寬度控制<b class='flag-5'>pwm</b>的工作原理

    PWM脈沖驅動電路

    PWM脈沖驅動電路
    發表于 01-01 01:21 ?5532次閱讀
    <b class='flag-5'>PWM</b><b class='flag-5'>脈沖</b>驅動電路

    脈沖信號怎么產生

    本文首先介紹了脈沖信號怎么產生的以及產生脈沖信號的方法,其次介紹了脈沖信號的基本參數,最后介紹了脈沖
    的頭像 發表于 08-21 18:01 ?4.5w次閱讀

    基于DSP器件TMS320F2812芯片的新型PWM算法的研究

    在用數字化控制技術產生PWM脈沖時,三角載波實際上是不存在的,完全由軟件及硬件定時器代替,圖1為三角載波的產生原理(Ttimer為定時器的值)。 P
    發表于 09-02 10:20 ?1992次閱讀
    基于DSP器件TMS320F2812芯片的新型<b class='flag-5'>PWM</b>算法的研究

    PWM脈沖寬度調制產生方波時,調制波可否采用三角波?為什么?

    PWM脈沖寬度調制產生方波時,調制波可采用三角波。
    的頭像 發表于 03-10 15:12 ?5760次閱讀
    <b class='flag-5'>PWM</b><b class='flag-5'>脈沖</b>寬度調制<b class='flag-5'>產生</b>方波時,調制波可否采用三角波?為什么?

    什么是PWM 為什么要使用PWM 怎么產生PWM控制信號

    PWM拆開來就是:【P=Pulse、W=Width、M=Modulation】=>脈沖寬度調制。
    的頭像 發表于 07-22 16:49 ?6404次閱讀
    什么是<b class='flag-5'>PWM</b> 為什么要使用<b class='flag-5'>PWM</b> 怎么<b class='flag-5'>產生</b><b class='flag-5'>PWM</b>控制信號

    PWM信號產生的原理及方式

    PWM脈沖寬度調制,Pulse Width Modulation)信號產生的原理及方式是一個涉及電子技術和控制理論的重要話題。以下將從PWM信號的基本原理、
    的頭像 發表于 08-12 17:23 ?429次閱讀