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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

基于S3C44B0X微處理器實(shí)現(xiàn)運(yùn)動(dòng)系統(tǒng)電流信號(hào)采集電路的設(shè)計(jì)

電子設(shè)計(jì) ? 來源:微計(jì)算機(jī)信息 ? 作者:程建輝;肖金壯 ? 2021-03-24 16:23 ? 次閱讀

1 引言

運(yùn)動(dòng)控制系統(tǒng)在國(guó)民經(jīng)濟(jì)和國(guó)防等領(lǐng)域中所起的作用以及應(yīng)用的范圍越來越大,運(yùn)動(dòng)控制技術(shù)正在不斷的深入到各個(gè)領(lǐng)域并迅速發(fā)展,其應(yīng)用范圍已經(jīng)涵蓋了幾乎所有的工業(yè)領(lǐng)域。例如在生產(chǎn)過程中對(duì)機(jī)器人手的位置控制;造紙廠中紙張滾卷的恒張力控制;導(dǎo)彈制導(dǎo)系統(tǒng)控制導(dǎo)彈準(zhǔn)確擊中目標(biāo)等。

為了保證及時(shí)發(fā)現(xiàn)運(yùn)動(dòng)控制系統(tǒng)中可能發(fā)生的各種故障,應(yīng)在系統(tǒng)中加入故障檢測(cè)子系統(tǒng)。電機(jī)驅(qū)動(dòng)運(yùn)動(dòng)控制系統(tǒng)中的大部分機(jī)械故障和電氣故障都會(huì)引起電機(jī)電流的異常變化,非線性能量算法能夠從電流信號(hào)中提取出系統(tǒng)故障信息,從而及時(shí)檢測(cè)出系統(tǒng)中可能產(chǎn)生的各種故障。

本文首先以三星公司的S3C44B0X微處理器為核心芯片,設(shè)計(jì)電流信號(hào)采集電路,然后介紹了非線性能量故障診斷算法。最后以X-Y運(yùn)動(dòng)平臺(tái)為實(shí)驗(yàn)對(duì)象,驗(yàn)證該算法的有效性。

2 信號(hào)采集電路設(shè)計(jì)

S3C44B0X具有8通道的10位模數(shù)轉(zhuǎn)換器ADC),它是一個(gè)逐次逼近型的ADC,內(nèi)部結(jié)構(gòu)中包括模擬輸入多路復(fù)用器,自動(dòng)調(diào)零比較器,時(shí)鐘產(chǎn)生器,10位逐次逼近寄存器和輸出寄存器。該ADC還提供可編程選擇的睡眠模式,以節(jié)省功耗。使用S3C44B0X的ADC時(shí)應(yīng)當(dāng)注意,在ADC退出休眠模式后,為使ADC參考電壓穩(wěn)定,在第一次A/D轉(zhuǎn)換之前需等待10ms。通道切換時(shí),應(yīng)該保證至少15μs的時(shí)間間隔。

S3C44B0X的ADC輸入電壓范圍為:0“2.5V,而被測(cè)電機(jī)電流信號(hào)的變化范圍是:-5V”+5V。因此首先應(yīng)將雙極性的輸入信號(hào)轉(zhuǎn)化到0“2.5V范圍內(nèi)。如果采樣頻率高于100Hz,還應(yīng)在信號(hào)輸入通道加上采樣保持器。

基于S3C44B0X微處理器實(shí)現(xiàn)運(yùn)動(dòng)系統(tǒng)電流信號(hào)采集電路的設(shè)計(jì)

圖 1: 模擬信號(hào)調(diào)理電路

圖1中利用μA741通用型運(yùn)算放大器構(gòu)成升壓電路,選用LF398作為采樣保持器??芍獔D中各節(jié)點(diǎn)電位的關(guān)系可用(1)式表達(dá),從而將-5V”+5V變化范圍的被測(cè)信號(hào)轉(zhuǎn)化到0“2.5V。

3 故障檢測(cè)算法

為了及時(shí)檢測(cè)出系統(tǒng)中產(chǎn)生的故障,需要對(duì)電機(jī)電流信號(hào)進(jìn)行實(shí)時(shí)處理,從中提取出故障信息。文獻(xiàn)[3,4]給出了一種非線性能量算法NEO (Nonlinear Energy Operation),可以用來檢測(cè)出信號(hào)的異常變化。對(duì)于給定的信號(hào)序列x(n),非線性能量算法定義如下:

文獻(xiàn)在NEO中引入時(shí)域窗口的概念,在此基礎(chǔ)上提出了光滑非線性能量算法SNEO(SmoothedNonlinear Energy Operation)。該算法可用下式描述:

其中 ?為卷積運(yùn)算符,ω為時(shí)間窗口(time window)。式中的ω(k)可以按照下式選?。?/p>

為了達(dá)到理想的檢測(cè)效果,也可以采用多步SNEO:

其中:

通過選擇適當(dāng)?shù)臅r(shí)間延遲m,可以有效減少采樣噪聲的影響。

4 信號(hào)采集和分析

為了快速準(zhǔn)確的檢測(cè)出系統(tǒng)發(fā)生的故障,需要設(shè)置適當(dāng)?shù)?a href="http://www.ttokpm.com/tags/濾波器/" target="_blank">濾波器參數(shù)(比如多步SNEO算法中的b和m),這就要首先對(duì)被檢測(cè)信號(hào)進(jìn)行分析處理。ARM芯片雖然能夠?qū)崟r(shí)處理大量的數(shù)據(jù),但是缺乏上位機(jī)(如工控機(jī))專用軟件具有的強(qiáng)大數(shù)據(jù)分析處理功能。這里選用科學(xué)研究中經(jīng)常用到的MATLAB軟件對(duì)ARM系統(tǒng)采集到的數(shù)據(jù)進(jìn)行離線分析處理,得到所需的濾波器參數(shù)。

為了方便將ARM采集到的數(shù)據(jù)導(dǎo)入到MATLAB中,首先編寫了MATLAB和ARM系統(tǒng)的串行通信程序。要確定MATLAB環(huán)境已安裝了儀器控制工具箱(Instrument Control Toolbox)。在MATLAB中,可以通過創(chuàng)建串口對(duì)象,來實(shí)現(xiàn)MATLAB與串口設(shè)備的通信。

創(chuàng)建串口對(duì)象可使用如下的語句:

bj = serial(‘port’, ‘PropertyName’, Property Value ,。..)

其中obj為創(chuàng)建的串口對(duì)象;port為串口對(duì)象所對(duì)應(yīng)的串行口,如COM1;PropertyName和PropertyValue分別為串口屬性名稱和相應(yīng)的取值,兩者需成對(duì)出現(xiàn)。創(chuàng)建串口對(duì)象之后,在進(jìn)行串口的讀寫操作之前,還需調(diào)fopen函數(shù)來建立串口對(duì)象同串口設(shè)備的實(shí)際連接。

可以使用fprintf和fwrite函數(shù)向串口設(shè)備發(fā)送數(shù)據(jù),其中fprintf用于向串口設(shè)備發(fā)送文本信息,fwrite用于向設(shè)備發(fā)送二進(jìn)制數(shù)據(jù)。MATLAB提供了很多函數(shù),利用這些函數(shù)可以方便靈活的讀取串口設(shè)備發(fā)送的信息;其中最常用的兩個(gè)讀串口函數(shù)為fread和fscanf,fread用于從串口設(shè)備讀取二進(jìn)制信息,fscanf用于讀取設(shè)備發(fā)送的文本信息。

如果不再使用串口,應(yīng)將串口對(duì)象同設(shè)備斷開,然后將其從內(nèi)存和MATLAB工作空間中刪除??梢允褂胒close,delete,chear來完成這一系列操作。

下面給出的MATLAB腳本文件用于接收ARM系統(tǒng)采集到的5000個(gè)雙字節(jié)數(shù)據(jù),并將這些數(shù)據(jù)存儲(chǔ)到100×50的矩陣data中。這樣就可以方便的利用MATLAB強(qiáng)大的數(shù)據(jù)分析處理功能,從得到的數(shù)據(jù)中總結(jié)出有用的信息。

s = serial(‘COM1’,‘BaudRate’,115200,‘Terminator’, {‘’,‘’});

data = zeros(100,50);

fopen(s);

for i = 1:50

fwrite(s,0x1,‘char’);

tmp = fread(s,100,‘int16’);

data(:,i) = tmp;

for j = 1:1000

j=j;

end

end

fclose(s);delete(s);clear s;

ARM系統(tǒng)的串口發(fā)送程序如下。在ARM的串口接收中斷服務(wù)程序中將URXD0Flag賦值為1,這樣每當(dāng)ARM接受到MATLAB發(fā)送過來的SOH (Start of Header)字符,即0x1,便會(huì)向MATLAB發(fā)送100個(gè)雙字節(jié)數(shù)據(jù)。sl和sh分別存放數(shù)據(jù)的底八位和高八位。

while(1) {

if(URXD0Flag) {

for(j = 1; j <= 100;j++) {

sl = signal[ i] & 0xff;

sh = (signal[i++] & 0xff00)>>8;

Uart_SendByte(sl);

Uart_SendByte(sh);

}

URXD0Flag = 0;

}

if(i >= 5000)

break;

}

5 算法驗(yàn)證

這里以X-Y運(yùn)動(dòng)平臺(tái)為實(shí)驗(yàn)對(duì)象,設(shè)計(jì)了系統(tǒng)故障實(shí)時(shí)檢測(cè)實(shí)驗(yàn),驗(yàn)證故障檢測(cè)算法的有效性。首先通過實(shí)驗(yàn)得到X-Y平臺(tái)正常工作時(shí)電機(jī)的電流信號(hào)TN,然后在平臺(tái)運(yùn)動(dòng)過程中給平臺(tái)施加一個(gè)額外的阻力(模擬故障發(fā)生的情況),得到電機(jī)輸出電流信號(hào)為TF。通過對(duì)這兩種情況下的電流偏差信號(hào)TE(TE=TN-TF)進(jìn)行分析,可以從中提取出故障信號(hào)。

S3C44B0X通過ADC采集到的TN,TF信號(hào),以及TE隨時(shí)間的變化曲線分別如圖2和圖3所示。

圖 2: TN,TF 變化曲線圖 3: TE 隨時(shí)間變化曲線

從圖3可以看出,TE信號(hào)中存在較多的干擾信息,為了準(zhǔn)確無誤的檢測(cè)出其中的故障信號(hào),就應(yīng)采用某種濾波算法對(duì)TE進(jìn)行處理,從而將故障信號(hào)提取出來。圖4和圖5分別是采用NEO和多步SNEO(m=50,b=50)兩種方法對(duì)TE進(jìn)行處理,得到的信號(hào)曲線。

圖 4: 利用NEO 對(duì)TE 進(jìn)行處理的結(jié)果曲線圖 5: 利用多步SNEO 對(duì)TE 進(jìn)行處理的結(jié)果曲線

比較圖4和圖5可以看出,多步SNEO能夠更好的消除干擾噪聲的影響,將故障信息成功地提取出來。但是利用SNEO會(huì)引入一定的延時(shí),從而造成故障被檢測(cè)出時(shí)間的滯后。從式(5)和式(6)可知,當(dāng)m=50,b=50,采樣頻率為500Hz時(shí),滯后時(shí)間為:

6 結(jié)論

本文利用非線性能量算法對(duì)電機(jī)電流偏差信號(hào)進(jìn)行分析,能夠及時(shí)發(fā)現(xiàn)運(yùn)動(dòng)控制系統(tǒng)中發(fā)生的各種扭矩相關(guān)故障,從而提高系統(tǒng)故障檢測(cè)環(huán)節(jié)的準(zhǔn)確性和及時(shí)性??梢栽诖嘶A(chǔ)上設(shè)計(jì)系統(tǒng)容錯(cuò)環(huán)節(jié),使系統(tǒng)的安全性和可靠性得到更好的保證。

責(zé)任編輯:gt

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

    關(guān)注

    450

    文章

    49631

    瀏覽量

    417125
  • 微處理器
    +關(guān)注

    關(guān)注

    11

    文章

    2212

    瀏覽量

    81978
  • 模數(shù)轉(zhuǎn)換器

    關(guān)注

    26

    文章

    3040

    瀏覽量

    126549
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    S3C44B0X pdf

    S3C44B0X p
    發(fā)表于 06-27 09:37 ?76次下載

    s3c44b0x中文資料,s3c44b0x中文數(shù)據(jù)手冊(cè)

    S3C44B0X 中文數(shù)據(jù)手冊(cè)...........................................................116 IIC 總線接口
    發(fā)表于 06-27 09:40 ?152次下載

    基于S3C44B0X微處理器的JFFS2件系統(tǒng)實(shí)現(xiàn)

    基于S3C44B0X微處理器的JFFS2件系統(tǒng)實(shí)現(xiàn)
    發(fā)表于 03-28 09:50 ?16次下載

    μC OS-II 在S3C44B0X 處理器上的移植

    介紹實(shí)時(shí)操作系統(tǒng)μC/OS-II 的特點(diǎn)和內(nèi)核結(jié)構(gòu),給出μC/OS-II 在Samsung 嵌入式S3C44B0X ARM7 微處理器上的移
    發(fā)表于 05-15 13:34 ?18次下載

    基于S3C44B0X 的uClinux的移植

    S3C44B0X 作為一款以ARM7TDMI 為內(nèi)核的微處理器,正日益受到廣泛的應(yīng)用;uClinux作為一種運(yùn)行于沒有MMU 的嵌入式微處理器的Linux 衍生操作系統(tǒng),也廣泛應(yīng)用于嵌
    發(fā)表于 05-15 15:40 ?14次下載

    基于S3C44B0X+μcLinux的嵌入式以太網(wǎng)設(shè)計(jì)與分析

    本文介紹了基于一款A(yù)RM 處理器——S3C44B0X 的以太網(wǎng)接口電路設(shè)計(jì),并詳細(xì)地闡述了在嵌入式操作系統(tǒng)μcLinux 下網(wǎng)卡驅(qū)動(dòng)的實(shí)現(xiàn)
    發(fā)表于 06-15 11:36 ?16次下載

    基于S3C44B0X的嵌入式網(wǎng)絡(luò)通信研究

    S3C44B0X 作為一款以ARM7TDMI 為內(nèi)核的微處理器,得到了廣泛的應(yīng)用。本文采用該處理器,使用到廣泛應(yīng)用的源代碼公開的uClinux 操作系統(tǒng),
    發(fā)表于 06-15 15:44 ?18次下載

    μC/OS-Ⅱ在S3C44B0X上的移植

    本文簡(jiǎn)介了一種實(shí)時(shí)多任務(wù)內(nèi)核μC/OS-Ⅱ。并根據(jù)S3C44B0X 芯片的硬件特性,給出了一種把μC/OS-Ⅱ移植到S3C44B0X 上的方案。關(guān)鍵詞:實(shí)時(shí)多任務(wù)內(nèi)核;μ
    發(fā)表于 08-31 11:46 ?18次下載

    基于S3C44B0X處理器的VxWorks中斷設(shè)計(jì)

    通過基于立宇泰S3C44B0X 開發(fā)板的BSP 移植調(diào)試,闡述了VxWorks 的異常中斷處理機(jī)制,實(shí)現(xiàn)了VxWorks 基于S3C44B0X 處理
    發(fā)表于 09-03 11:25 ?17次下載

    S3C44B0X中文手冊(cè) pdf

    S3C44B0X中文數(shù)據(jù) 三星的S3C44B0X 16/32位RISC處理器被設(shè)計(jì)來為手持設(shè)
    發(fā)表于 02-10 12:07 ?254次下載

    S3C44B0X datasheet, RISC MICRO

    S3C44B0X d
    發(fā)表于 03-09 09:47 ?35次下載

    基于S3C44B0X的心電信號(hào)處理系統(tǒng)設(shè)計(jì)

    基于S3C44B0X的心電信號(hào)處理系統(tǒng)設(shè)計(jì) 本文設(shè)計(jì)了一個(gè)具有數(shù)字化、信息化特征的心電信號(hào)處理系統(tǒng)。該
    發(fā)表于 10-06 08:22 ?859次閱讀
    基于<b class='flag-5'>S3C44B0X</b>的心電<b class='flag-5'>信號(hào)</b><b class='flag-5'>處理系統(tǒng)</b>設(shè)計(jì)

    微處理器S3C44B0X音頻文件播放

    微處理器S3C44B0X音頻文件播放 S3C44B0X是三星公司針對(duì)嵌入式系統(tǒng)推出高性價(jià)比微處理器,它是基于ARM7TDMI內(nèi)核的16/3
    發(fā)表于 03-16 11:46 ?756次閱讀
    <b class='flag-5'>微處理器</b><b class='flag-5'>S3C44B0X</b>音頻文件播放

    S3C44B0X微處理器內(nèi)置LCD控制

      引言   S3C44B0X微處理器是三星公司專為手持設(shè)備和一般應(yīng)用提供的高性價(jià)比和高性能的微控制解決方案。它使用ARM7TDMI核,工作在66MHz,集成了LCD控制等外圍器
    發(fā)表于 08-30 10:18 ?1684次閱讀
    <b class='flag-5'>S3C44B0X</b><b class='flag-5'>微處理器</b>內(nèi)置LCD控制<b class='flag-5'>器</b>

    S3C44B0X原理圖

    S3C44B0X原理圖:
    發(fā)表于 09-14 15:28 ?167次下載
    <b class='flag-5'>S3C44B0X</b>原理圖