一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

配方數(shù)據(jù)文件測(cè)試實(shí)例

機(jī)器人及PLC自動(dòng)化應(yīng)用 ? 來(lái)源:機(jī)器人及PLC自動(dòng)化應(yīng)用 ? 作者:機(jī)器人及PLC自動(dòng)化 ? 2022-09-22 14:58 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

配方功能快速入門

配方數(shù)據(jù)文件按照標(biāo)準(zhǔn) CSV 格式存儲(chǔ)在 S7-1200 CPU 裝載存儲(chǔ)器或 S7-1200 SIMATIC 存儲(chǔ)卡“程序卡”中。分別可通過 PLC Web 服務(wù)器或?qū)τ诖鎯?chǔ)卡文件操作,將數(shù)據(jù)文件傳送到 PC 進(jìn)行管理和查看。也可將修改過后的配方數(shù)據(jù)文件上傳至PLC,再通過“RecipeImport”配方導(dǎo)入指令更新PLC裝載存儲(chǔ)器中配方數(shù)據(jù)塊的數(shù)值。

測(cè)試實(shí)例:

SIMATIC S7-1200 系列 CPU 使用配方數(shù)據(jù)功能,需要注意以下幾兩點(diǎn):

程序中創(chuàng)建一個(gè)配方數(shù)據(jù)塊,此 DB 塊必須存儲(chǔ)在 CPU 裝載存儲(chǔ)器中,可以使用 CPU 內(nèi)部裝載存儲(chǔ)器或程序卡

程序中創(chuàng)建一個(gè)活動(dòng)配方數(shù)據(jù)塊,此 DB 塊必須在 CPU 工作存儲(chǔ)器中,使用程序邏輯讀取或?qū)懭胍粋€(gè)活動(dòng)配方記錄

下面,舉例說明用 S7-1200 實(shí)現(xiàn)配方的寫入和讀取功能。為方便配方數(shù)據(jù)操作,按照下圖思路進(jìn)行項(xiàng)目編程

c235df12-39c0-11ed-9e49-dac502259ad0.jpg

圖1 配方項(xiàng)目框圖

測(cè)試環(huán)境:

操作系統(tǒng):Win 10 64bit Pro 1703

軟件:TIA PORTAL V15 Update 4

測(cè)試軟件:Notepad++ V7.5.8

硬件:S7-1215C DC/DC/DC V4.2.3

訂貨號(hào):6ES7215-1AG40-0XB0

實(shí)現(xiàn)步驟

1.定義一個(gè) PLC 數(shù)據(jù)類型(UDT)

配方數(shù)據(jù)塊必須包含數(shù)組,可以是一維的也可以是多維的,數(shù)組元素是 PLC 數(shù)據(jù)類型或結(jié)構(gòu)。在這個(gè)配方實(shí)例中使用 PLC 數(shù)據(jù)類型創(chuàng)建配方數(shù)據(jù)塊。

在此,創(chuàng)建一個(gè) PLC 數(shù)據(jù)類型,以定義一個(gè)配方記錄中的所有組成,以制造蛋糕為例,建立UDT過程參見鏈接,建好后如圖2所示。

c25c578c-39c0-11ed-9e49-dac502259ad0.jpg

圖2.定義 PLC 數(shù)據(jù)類型

數(shù)據(jù)類型是一個(gè)數(shù)據(jù)模板,它在每個(gè)配方數(shù)據(jù)塊以及活動(dòng)配方數(shù)據(jù)塊中重復(fù)使用。輸入所有實(shí)例配方共用的成分名稱和數(shù)據(jù)類型,根據(jù)分配給配方成分的數(shù)值不同而產(chǎn)生不同的產(chǎn)品配方。

2.使用 PLC 數(shù)據(jù)類型創(chuàng)建配方數(shù)據(jù)塊

創(chuàng)建一個(gè)配方數(shù)據(jù)塊,為全局?jǐn)?shù)據(jù)塊,并啟用數(shù)據(jù)塊屬性"僅存儲(chǔ)在裝載內(nèi)存中",如圖3紅圈所示。本例中,配方數(shù)據(jù) DB 塊名稱為 "DB1_蛋糕配方”,如圖4所示,插入一個(gè)數(shù)組類型變量,數(shù)組元素的數(shù)據(jù)類型為"蛋糕配方",本例中設(shè)置數(shù)組限值0..7,即可創(chuàng)建8個(gè)配方,可根據(jù)實(shí)際情況調(diào)整。

注意,如果需要使用RecipeExport和RecipeImport導(dǎo)入導(dǎo)出,配方DB塊的名稱中盡量不出現(xiàn)中文字符,否則在WEB頁(yè)面操作會(huì)略微麻煩一些,具體詳見配方數(shù)據(jù)的管理。本例為顯示直觀,所以使用了“DB1_蛋糕配方”的名字。

c279dcee-39c0-11ed-9e49-dac502259ad0.jpg

圖3.定義數(shù)據(jù)塊屬性

c290c22e-39c0-11ed-9e49-dac502259ad0.jpg

圖4.創(chuàng)建配方數(shù)據(jù)塊

對(duì)于圖3的優(yōu)化的塊訪問選項(xiàng),一般默認(rèn)激活,因?yàn)閺腟7-1200 V4.2起,對(duì)于僅存儲(chǔ)于裝載存儲(chǔ)器的優(yōu)化塊的大小限制為256kB,而僅存儲(chǔ)于裝載存儲(chǔ)器的非優(yōu)化塊僅有64kB,顯然優(yōu)化塊可以存儲(chǔ)更多的配方記錄,如果單個(gè)配方數(shù)據(jù)太多,需要放在多個(gè)DB中,也可以減少DB塊個(gè)數(shù)。

3.在工作存儲(chǔ)器中創(chuàng)建活動(dòng)配方 DB,并通過“READ_DBL”和“WRIT_DBL”指令實(shí)現(xiàn)對(duì)裝載存儲(chǔ)區(qū)配方數(shù)據(jù)塊的讀寫操作

在工作存儲(chǔ)器中準(zhǔn)備一個(gè)活動(dòng)配方數(shù)據(jù)塊,用于配方數(shù)據(jù)的寫入和讀取。在本例中,在工作存儲(chǔ)器中創(chuàng)建了一個(gè)全局?jǐn)?shù)據(jù)塊,名稱為 "DB2_活動(dòng)配方”,類型為“蛋糕配方”,如圖5所示。

c2aa47f8-39c0-11ed-9e49-dac502259ad0.jpg

圖5.添加活動(dòng)配方塊

確定后,就可以得到活動(dòng)配方數(shù)據(jù)塊,該塊只由一組配方組成,如圖6所示。

c2c25366-39c0-11ed-9e49-dac502259ad0.jpg

圖6.活動(dòng)配方數(shù)據(jù)塊

注意,因?yàn)橹噶睢癛EAD_DBL”和“WRIT_DBL”的緣故,要求活動(dòng)配方數(shù)據(jù)塊與配方數(shù)據(jù)塊的優(yōu)化屬性必須相同,即都同時(shí)是優(yōu)化數(shù)據(jù)塊,或者同時(shí)是非優(yōu)化數(shù)據(jù)塊。

將這個(gè) DB 塊作為與裝載存儲(chǔ)器中配方數(shù)據(jù)塊的接口,分別通過指令“WRIT_DBL”能實(shí)時(shí)將存于工作存儲(chǔ)器的活動(dòng)配方數(shù)據(jù)寫入至裝載存儲(chǔ)器的配方數(shù)據(jù)塊,或者通過指令“READ_DBL”實(shí)時(shí)讀取裝載存儲(chǔ)器的配方數(shù)據(jù)塊到工作存儲(chǔ)區(qū)中活動(dòng)配方數(shù)據(jù)。

4.導(dǎo)出配方數(shù)據(jù)塊

對(duì)于S7-1200 V4.0及其以后版本的CPU,可以使用指令RecipeExport和RecipeImport對(duì)配方數(shù)據(jù)塊進(jìn)行導(dǎo)入和導(dǎo)出,在電腦上使用EXCEL、ASCII編輯器等工具編輯。

對(duì)于S7-1200 V4.0以前的版本,一般建議直接在配方數(shù)據(jù)塊的起始值輸入配方,這一部分用戶可以直接跳過下面4-6步,直接看第7步。

在本例中,直接在OB1使用LAD語(yǔ)言調(diào)用RecipeExport和后面的RecipeImport塊,實(shí)際使用時(shí)可以在FC/FB,或者FB的多重背景中使用,語(yǔ)言也可以使用FBD、SCL。

首先新建DB塊,用于調(diào)用塊的請(qǐng)求與狀態(tài)位等,名稱為"DB3_操作",建立結(jié)構(gòu)體"Export",以及相關(guān)變量,如圖7所示。

c2de0912-39c0-11ed-9e49-dac502259ad0.jpg

圖7. 建立結(jié)構(gòu)體

在 OB1 調(diào)用RecipeExport,以及捕捉是否完成及錯(cuò)誤代碼等程序,如圖8所示。

c2f02034-39c0-11ed-9e49-dac502259ad0.jpg

圖8.調(diào)用RecipeExport指令

5.配方csv文件的導(dǎo)入和導(dǎo)出

可以使用Web服務(wù)器或者存儲(chǔ)卡的方式對(duì)csv文件進(jìn)行導(dǎo)入和導(dǎo)出,在電腦上的Excel等軟件上進(jìn)行配方數(shù)據(jù)的編輯,具體操作詳見配方數(shù)據(jù)的管理。

6.導(dǎo)入配方數(shù)據(jù)塊

當(dāng)配方文件通過WEB上載完成,或通過存儲(chǔ)卡重新導(dǎo)入文件后,就可以導(dǎo)入配方數(shù)據(jù)塊。和第4步類似,在DB塊"DB3操作",中建立結(jié)構(gòu)體"Import",以及相關(guān)變量,結(jié)構(gòu)同"Export",如圖9所示,用于RecipeImport的請(qǐng)求與狀態(tài)位。

c3025ed4-39c0-11ed-9e49-dac502259ad0.jpg

圖9. 建立結(jié)構(gòu)體

在 OB1 調(diào)用RecipeImport,以及捕捉是否完成及錯(cuò)誤代碼等程序,如圖10所示。思路同第4步。

c318b5bc-39c0-11ed-9e49-dac502259ad0.jpg

圖10.調(diào)用RecipeImport指令

7.讀取配方數(shù)據(jù)

經(jīng)過使用配方指令或者直接在配方數(shù)據(jù)塊的編輯,此時(shí)配方數(shù)據(jù)已經(jīng)保存在PLC的裝載存儲(chǔ)器中,需要使用READ_DBL指令讀取出來(lái)。可以在DB塊"DB3操作",建立一個(gè)Int類型變量Index用作配方編號(hào)。對(duì)于本例,配方數(shù)組限值為0-7,所以該配方編號(hào)變量取值范圍也是0-7,可以在HMI畫面上設(shè)置該值,也可以在程序中設(shè)置該值。此外同樣在DB塊"DB3_操作",建立結(jié)構(gòu)體"Read",以及相關(guān)變量,用于READ_DBL的請(qǐng)求與狀態(tài)位,如圖11所示。

c337ec0c-39c0-11ed-9e49-dac502259ad0.jpg

圖11.建立Index變量及結(jié)構(gòu)體

然后利用數(shù)組的索引尋址功能,將配方數(shù)組指定索引的變量讀取到活動(dòng)配方,即如果需要配方0送到活動(dòng)配方數(shù)據(jù)塊,則Index賦值為0,需要配方1送到活動(dòng)配方數(shù)據(jù)塊,則Index賦值為1,......,具體程序如圖12所示。

c3538dae-39c0-11ed-9e49-dac502259ad0.jpg

圖12.讀配方

然后就可以直接使用活動(dòng)配方了,不論是程序中,還是HMI畫面中。例如本例中,當(dāng)Index=0時(shí),讀出的活動(dòng)配方DB,如圖13所示。

c369ce2a-39c0-11ed-9e49-dac502259ad0.jpg

圖13.活動(dòng)配方數(shù)據(jù)

8.在線修改配方

通常配方功能使用到第7步就可以結(jié)束了,如果需要偶爾小范圍修改配方數(shù)據(jù),不想大規(guī)模導(dǎo)入導(dǎo)出,或者不想打開程序修改配方數(shù)據(jù)起始值,可以使用WRIT_DBL指令實(shí)現(xiàn)該功能。

對(duì)于本例依然利用DB塊"DB3_操作"的變量Index,確定需要修改的配方編號(hào),實(shí)際編程可以根據(jù)需要使用和讀配方不一樣的配方編號(hào)變量。

通常在HMI畫面上指定需要修改的配方編號(hào),并且將活動(dòng)配方的變量與HMI的IO域關(guān)聯(lián),使用一個(gè)按鈕觸發(fā)READ_DBL的REQ將該配方編號(hào)對(duì)應(yīng)的參數(shù)都讀取到活動(dòng)配方,即映射到了IO域,然后再修改其中需要修改的變量,最后再使用另外一個(gè)按鈕觸發(fā)WRIT_DBL的REQ實(shí)現(xiàn)將改后的活動(dòng)配方寫入該指定配方編號(hào)對(duì)應(yīng)的配方,參考畫面如圖14。

c56585e8-39c0-11ed-9e49-dac502259ad0.jpg

圖14.HMI畫面

同樣在DB塊"DB3_操作",建立結(jié)構(gòu)體"Write",以及相關(guān)變量,結(jié)構(gòu)同"Read",用于WRIT_DBL的請(qǐng)求與狀態(tài)位,如圖15所示。

c58af4a4-39c0-11ed-9e49-dac502259ad0.jpg

圖15.建立結(jié)構(gòu)體

最后同樣,利用數(shù)組的索引尋址功能,將活動(dòng)配方寫入到配方數(shù)組指定索引的變量,即如果需要修改配方0,則將Index賦值為0,修改活動(dòng)配方數(shù)據(jù)塊后寫入,需要修改配方1,則將Index賦值為1,修改活動(dòng)配方數(shù)據(jù)塊后寫入,......,具體程序如圖16所示。

c5a0f632-39c0-11ed-9e49-dac502259ad0.jpg

圖16.寫配方

本例如圖17所示,讀出Index為0的配方,然后修改黃油數(shù)據(jù)為2.0,點(diǎn)擊“寫入配方”按鈕即可修改配方DB的值。

c5c78e50-39c0-11ed-9e49-dac502259ad0.jpg

圖17.HMI修改數(shù)據(jù)

審核編輯:彭靜
聲明:本文內(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)投訴
  • plc
    plc
    +關(guān)注

    關(guān)注

    5037

    文章

    13919

    瀏覽量

    474535
  • 存儲(chǔ)器
    +關(guān)注

    關(guān)注

    38

    文章

    7651

    瀏覽量

    167376
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7256

    瀏覽量

    91857
  • 程序
    +關(guān)注

    關(guān)注

    117

    文章

    3826

    瀏覽量

    82976

原文標(biāo)題:配方功能快速入門

文章出處:【微信號(hào):gh_a8b121171b08,微信公眾號(hào):機(jī)器人及PLC自動(dòng)化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    數(shù)據(jù)文件合并

    第一次練手寫的小工具,可以批量將大量測(cè)試數(shù)據(jù)文件合并成一個(gè)文檔,以便后續(xù)處理,奉上源碼,各位可自由發(fā)揮。
    發(fā)表于 03-04 16:52

    LabVIEW數(shù)據(jù)文件格式的視頻教程

    LabVIEW數(shù)據(jù)文件格式的視頻教程 LabVIEW數(shù)據(jù)文件格式之華山論
    發(fā)表于 03-26 12:16 ?113次下載

    matlab數(shù)據(jù)文件處理小程序

    數(shù)據(jù)文件處理小程序 在實(shí)驗(yàn)中,處理記錄數(shù)據(jù)文件是經(jīng)常要做的,而用Matlab來(lái)處理是我最推崇的,方便快捷,數(shù)據(jù)文件格式任意設(shè)置
    發(fā)表于 12-25 13:01 ?1111次閱讀

    了解LabVIEW數(shù)據(jù)文件格式

    LabVIEW數(shù)據(jù)文件格式之華山論劍視頻教程
    的頭像 發(fā)表于 06-25 00:13 ?5136次閱讀
    了解LabVIEW<b class='flag-5'>數(shù)據(jù)文件</b>格式

    LabVIEW教學(xué)之數(shù)據(jù)文件操作

    LabVIEW教學(xué)之數(shù)據(jù)文件操作說明。
    發(fā)表于 03-29 15:18 ?30次下載

    ADSP-21160M IBIS數(shù)據(jù)文件BGA包

    ADSP-21160M IBIS數(shù)據(jù)文件BGA包
    發(fā)表于 04-13 10:35 ?2次下載
    ADSP-21160M IBIS<b class='flag-5'>數(shù)據(jù)文件</b>BGA包

    ADSP-21060 IBIS數(shù)據(jù)文件(qfp包)

    ADSP-21060 IBIS數(shù)據(jù)文件(qfp包)
    發(fā)表于 05-10 15:25 ?1次下載
    ADSP-21060 IBIS<b class='flag-5'>數(shù)據(jù)文件</b>(qfp包)

    ADSP-21062L IBIS數(shù)據(jù)文件(QFP包)

    ADSP-21062L IBIS數(shù)據(jù)文件(QFP包)
    發(fā)表于 05-10 17:18 ?2次下載
    ADSP-21062L IBIS<b class='flag-5'>數(shù)據(jù)文件</b>(QFP包)

    ADSP-21062L IBIS數(shù)據(jù)文件(BGA包)

    ADSP-21062L IBIS數(shù)據(jù)文件(BGA包)
    發(fā)表于 05-16 09:58 ?1次下載
    ADSP-21062L IBIS<b class='flag-5'>數(shù)據(jù)文件</b>(BGA包)

    ADSP-21060L IBIS數(shù)據(jù)文件(BGA包)

    ADSP-21060L IBIS數(shù)據(jù)文件(BGA包)
    發(fā)表于 05-16 10:45 ?1次下載
    ADSP-21060L IBIS<b class='flag-5'>數(shù)據(jù)文件</b>(BGA包)

    ADSP-21061L IBIS數(shù)據(jù)文件(BGA包)

    ADSP-21061L IBIS數(shù)據(jù)文件(BGA包)
    發(fā)表于 05-16 11:26 ?1次下載
    ADSP-21061L IBIS<b class='flag-5'>數(shù)據(jù)文件</b>(BGA包)

    ADSP-21061 IBIS數(shù)據(jù)文件(qfp包)

    ADSP-21061 IBIS數(shù)據(jù)文件(qfp包)
    發(fā)表于 05-16 13:46 ?0次下載
    ADSP-21061 IBIS<b class='flag-5'>數(shù)據(jù)文件</b>(qfp包)

    ADSP-21060L IBIS數(shù)據(jù)文件(QFP包)

    ADSP-21060L IBIS數(shù)據(jù)文件(QFP包)
    發(fā)表于 05-16 13:56 ?2次下載
    ADSP-21060L IBIS<b class='flag-5'>數(shù)據(jù)文件</b>(QFP包)

    ADSP-21062 IBIS數(shù)據(jù)文件(bga包)

    ADSP-21062 IBIS數(shù)據(jù)文件(bga包)
    發(fā)表于 05-24 09:46 ?2次下載
    ADSP-21062 IBIS<b class='flag-5'>數(shù)據(jù)文件</b>(bga包)

    如何刪除、管理配方數(shù)據(jù)文件

    每個(gè)配方文件聲明的元素個(gè)數(shù)等于已建立的配方數(shù)據(jù)類型中的元素個(gè)數(shù),配方的條目數(shù)等于“僅存儲(chǔ)在裝載存儲(chǔ)區(qū)”中
    的頭像 發(fā)表于 07-11 10:34 ?2117次閱讀