Step7下DB数据块导入导出EXCEL
数据导入导出EXCEL与数据库的连接
数据导入导出EXCEL与数据库的连接在当今信息时代,数据的处理和管理已经成为了各行各业中不可或缺的一部分。
在企业管理、市场营销、科学研究等领域,数据的导入导出以及与数据库的连接变得尤为重要。
本文将介绍如何进行数据导入导出EXCEL与数据库的连接,并探讨其在实际应用中的优势和应用场景。
一、数据导入导出EXCEL的基本方法在进行数据导入导出EXCEL之前,首先需要明确的是EXCEL文件是一种常见的电子表格文件格式,而数据库则是一种用于存储和管理数据的系统。
为了实现两者之间的连接,我们可以选用以下几种方法:1.使用EXCEL自带的导入导出功能:EXCEL软件本身提供了导入导出功能,用户可以通过“文件”-“导入”和“文件”-“导出”来实现数据的传输。
这种方法简单易用,适合处理小规模的数据,但对于大规模数据的处理效率较低。
2.使用宏(Macro):宏是一种自动化操作的脚本,可以通过编写宏来实现复杂的数据导入导出操作。
通过宏,我们可以自定义数据的格式、导入导出规则等,提高了数据处理的灵活性和自动化水平。
3.使用开源工具:除了EXCEL自带的功能,还存在一些开源的工具可以实现数据的导入导出,如Apache POI、Openpyxl等。
这些工具提供了丰富的API和文档,方便开发人员进行二次开发和定制化设计。
二、数据库与EXCEL的连接方式数据库与EXCEL的连接方式多种多样,我们可以根据实际需求选择合适的连接方式。
以下是一些常用的连接方式:1.ODBC(Open Database Connectivity)连接:ODBC是一种数据库连接标准,通过ODBC连接,我们可以直接在EXCEL中连接数据库并进行数据的导入导出操作。
这种方式对于频繁操作数据库的用户来说,非常方便快捷。
2.使用数据库驱动程序:各种数据库都提供了相应的驱动程序,通过安装数据库驱动程序,我们可以在EXCEL中连接数据库。
这种方式比较灵活,可以适用于不同类型的数据库。
将数据导入excel表格的方法
将数据导入excel表格的方法
一。
将数据导入 Excel 表格,这可是个实用的技能!首先得准备好您的数据,甭管是从数据库里弄出来的,还是自己整理的文档。
1.1 要是数据在文本文件里,像 CSV 这种格式,那打开 Excel 后,直接点击“文件”,然后选“打开”,找到您那文件,Excel 就能聪明地识别并导入。
1.2 要是数据在其他软件里,比如 Word 文档,您可以把相关内容选中,复制粘贴到 Excel 里。
不过得留意格式,有时候可能得稍微调整调整。
二。
还有些更高级的法子。
2.1 假如您经常要从同一个数据源导入数据,那就可以使用“数据连接”功能。
在 Excel 里找到“数据”选项卡,点“获取外部数据”,然后按照提示一步步来,设置好连接参数,以后每次要导入,就省事多了。
2.2 对于那些从网页上获取的数据,Excel 也有招儿。
您可以通过“自网站”功能,输入网址,Excel 能帮您把有用的数据抓取过来。
2.3 另外,要是您会编程,比如 VBA ,那就更厉害了,自己写代码来控制数据导入,想怎么弄就怎么弄,那叫一个随心所欲!
三。
不管用啥方法,导入后都得检查检查。
3.1 看看数据有没有缺失的,格式对不对,有没有乱码啥的。
3.2 要是有问题,别着急,慢慢调整,总能把数据弄得规规矩矩,整整齐齐的。
将数据导入 Excel 表格,方法多多,您多试试,总能找到最适合您的那一招!。
DB与Excel相互转换的实现方法
DB与Excel相互转换的实现方法在实际工作中,常常需要把某些相关数据导入到DB(数据库)中,以便实现数据的共享与查询,如何利用已有的Excel数据已成为一个棘手问题;另外,由于Excel具有强大的数据处理和数据分析功能,也常需要将DB中的数据导入到Excel中进行相应地统计分析。
本文通过具体实例讨论了DB与Excel 之间实现相互转换的方法。
1 Excel与DB的相互转换软件开发工具为VB,数据库为Access。
VB是微软公司开发的、事件驱动的编程语言,具有强大的数据处理功能。
它提供了对多种数据库的访问方法,可以方便地访问SQL Server、Oracle、Access等数据库。
Access 是微软公司开发的基于Windows的桌面关系数据库管理系统。
它为建立功能完善的数据库管理系统提供了方便。
1.1 DB To Excel实现数据库表中数据自动转存到Excel表中。
例如,已有一文件名“AA.mdb”的Access数据库文件,该数据库中有一名为“番禺区农用地标准样地属性数据表”的数据表,数据表如图1所示。
在VB中,引用“Microsoft ActiveX Data Objects 2.6 Library”和“Microsoft Excel 11.0 Object Library”,即ADO对象和Excel对象。
通过ADO对象访问数据库实现DB到Excel的转换。
程序代码如下:Dim cnn As New ADODB.Connection '数据库连接对象Dim rs As New Recordset '记录集对象Dim VBExcel As Excel.Application '定义一个Excel应用Dim Excelbook As Excel.Workbook '定义一个Excel工作簿Dim ExcelSheet As Excel.Worksheet '定义一个Excel工作表Dim ExcelFilename As String'Excel文件名Dim TableName As String '数据库表名Dim s As StringDim i, j As IntegerDim row As Integer '记录数TableName = "番禺区农用地标准样地属性数据表"Set VBExcel = CreateObject("Excel.Application") '创建Excel对象Set Excelbook = VBExcel.Workbooks().Add '生成工作簿Set ExcelSheet = Excelbook.Worksheets("Sheet1") '生成工作表s = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\AA.mdb" '连接Access cnn.Open s '打开Accessrs.Open "select * from " & TableName, cnn'......统计记录数rs.MoveFirstDo While Not rs.EOFrow = row + 1rs.MoveNextLoopWith Excelbook.ActiveSheet'......Excel表中第1行存放字段名i = 1For j = 1 To rs.Fields.Count.Cells(i, j) = rs.Fields(j - 1).NameNext j'......Excel表中第2行开始存放记录rs.MoveFirstFor i = 1 To rowFor j = 1 To rs.Fields.Count.Cells(i + 1, j) = rs.Fields(j - 1).ValueNext jrs.MoveNextNext iEnd WithVBExcel.Application.Visible = TrueExcelbook.SaveAs App.Path & "\" & TableName '生成的Excel文件名与数据表文件名一致Set VBExcel = NothingSet Excelbook = NothingSet ExcelSheet = Nothing程序运行后,在当前应用所在路径下自动创建名为“番禺区农用地标准样地属性数据表”的Excel文件,实现了将Access数据库相应数据表中的数据自动导入到Excel表中,结果如图2所示。
STEP 7如何导入和导出在 Excel 中编辑的 Symbol Table
如何导入和导出在 Excel 中编辑的 Symbol Table (符号表)?说明:下表描述了如何导出符号表、如何在 Excel 中编辑以及最后如何将表导回到 STEP 7 项目中。
编号步骤 1 打开 SIMATIC Manager 中的符号表,并通过“Table > Export...”将它导出。
图 012 然后,“Export”对话框打开。
选择用于保存符号表的文件夹。
为了进一步在 Excel 中编辑符号表,必须选择“Data Interchange Format (DIF)”作为文件类型。
在 Microsoft Excel 中,可以打开、编辑和再次保存 DIF 文件。
图 02点击 OK 确认后,将符号表导出。
3 现在可以使用 Excel 打开保存在当前文件夹中的 DIF 文件 (即导出的符号表)。
双击文件即可打开 (例如图03 中的“_symlist”文件)。
图 034 在打开的 Excel 表格中,可以将符号连同相应的地址、数据类型和注释一起输入。
图 045 用“File > Save”保存 Excel 表格时,会出现一条信息,提示文件可能包含有与 DIF (数据交换格式) 不兼容的功能。
如果点击“Yes”按钮,立即可以将符号表保存在选择的文件夹中。
图 05然后关闭 Excel 表格。
在关闭 Excel 表格时,会再次出现图 05 中显示的信息。
在此也要点击“Yes”按钮。
6 现在,通过“Table > Import...”导入已在 Excel 中使用 STEP7 Symbol Editor 编辑过的符号表。
在其中选择文件夹和文件名称 (要导入的符号表),并点击“Open”按钮。
图 06用在 Excel 中修改过的符号表来覆盖最初的符号表。
7 导入符号表后,会显示导入结果。
同时请注意“Help”下面的信息 (关于信息 291:1392 的帮助)。
图 07点击“Yes”打开日志文件。
如何将Ecel表格中的STE变量导入到DB块中更
如何将Excel表格中的STEP7变量导入到DB块中说明:如果要将变量从Excel导入到STEP7项目中,Excel文件事先要以【带格式文本文件(空格分隔)(*.prn)】的格式保存。
之后此文件作为外部STL源文件导入到STEP7中所设置的源文件夹中。
详细过程如下:1.打开MS Office Excel,输入DB数据块的值,如图01所示。
一列输入变量名,另外一列输入数据类型:图012.数据格式DB数据表如图02所示。
图02 Excel表格模版列说明如下:•A列为变量名•B列为【:】•C列为数据类型•D列为【:=】•E列为变量初始值•F列为【;】•F列为变量注释,注释前必须加【//】3.Prn文件生成编辑完成后,使用【文件→另存为】,将Excel保存在硬盘上。
保存文件类型为【带格式文本文件(空格分隔)(*.prn)】文件类型。
因此,文件名应该是“.prn” 类型。
图03 另存为prn格式4.点击【是】确认消息图045.关闭Excel文件,点【保存】、【是】确认消息图05图066.选中保存的Excel 文件,鼠标右键点击,弹出菜单,点击【重命名】,改变后缀文件类型为prn。
图07图087.将创建的AWL文件导入到STEP 7项目中。
具体操作方法为,在SIMATIC Manager 的源文件上右键,按下图打开AWL路径,,如图09~11 所示,在保存路径中选中所创建的AWL文件。
图09 AWL文件导入操作图10 选择AWL文件路径图11 AWL文件导入成功将AWL文件作为外部源导入到STEP 7中。
8.在源文件夹中双击打开导入的AWL文件,通过菜单命令【插入→块模版→DB】,将变量标签插入DB块模板。
图12 插入模版操作图13 插入的模版9.将变量表拖拽到【STRUCT】和【END_STRUCT】中间。
设置合适的【DB】块号为需要生成的号,删掉声明变量【b0】,以及【BEGIN】和【END_DATA_BLOCK】中的指令【b0:= b#16#01】。
PLC信号用STEP7导入EXCELL
6HUYLFH7RRO6 &ROOHFWLRQ RI 3/& 6LJQDOV LQ 67(3 ZLWK VXEVHTXHQW ([FHO (YDOXDWLRQ3UREOHP,Q LQGXVWULDO SODQWV LW LV DOZD\V SRVVLEOH WKDW VSRUDGLF HYHQWV RFFXU ZKLFK FDQQRW EH ORFDWHG LPPHGLDWHO\ )LQGLQJ WKH UHDVRQ LV IUHTXHQWO\ YHU\ GLIILFXOW DQG WLPH FRQVXPLQJ LI WKH FDXVH RFFXUV VSRUDGLFDOO\ RU RQO\ IRU D YHU\ VKRUW SHULRG RI WLPH ,Q WKHVH FDVHV PRQLWRULQJ ZLWK WKH VWDQGDUG 3* IXQFWLRQV VWDWXV LV LQDGHTXDWH 7UDFLQJ DQG ORFDWLQJ VSRUDGLF IDXOWV FDQ EH UHDOL]HG ZLWK VSHFLDO 3/& DQDO\]HU VRIWZDUH SURJUDPV RU \RX\RXUVHOI FUHDWH D IXQFWLRQ LQ 67(3 WR FROOHFW WKH UHOHYDQW VLJQDOV6ROXWLRQ7KLV H[DPSOH RU WRRO VDYHV \RX WKH SURJUDPPLQJ DQG SURYLGHV D QHXWUDO IXQFWLRQ EORFN ZLWK WKH IROORZLQJ IXQFWLRQDOLW\5HFRUGLQJ D ELW SDWWHUQ ZLWK XS WR ELWV5HFRUGLQJ DQ LQWHJHU YDOXH LQWHJHU ELWV5HFRUGLQJ GDWH WLPH RI WKH FKDQJH5HFRUGLQJ WKH 2% F\FOHV F\FOH FRXQWHU'DWD PDQDJHPHQW LQ WKH LQVWDQFH '% ZLWK D YDULDEOH FLUFXODU EXIIHU VL]H6HWWLQJ D WULJJHU FRQGLWLRQ IRU VWRSSLQJ DQG VWDUWLQJ WKH GDWD UHFRUGLQJ(YDOXDWLQJ WKH UHFRUGLQJ GDWD ZLWK 06 ([FHO3URJUDP VWUXFWXUH7R HYDOXDWH WKH GDWD LQ WKH LQVWDQFH GDWD EORFN WKLV H[DPSOH SURYLGHV \RX ZLWK DQ 06 ([FHO ZRUNERRN ZLWK 9%$ VFULSWV ZKLFK SUHVHQWV WKH FRQWHQW RI WKH FLUFXODU EXIIHU IURP DQ 67/ VRXUFH LQ D WDEOH RU D FKDUW 7KH GHWDLOHG GHVFULSWLRQ DQG WKH GRFXPHQWDWLRQ HQDEOH \RX WR DGDSW WKH IXQFWLRQ EORFN DQG WKH 9%$ VFULSWV WR \RXU VSHFLILF SUREOHP ZLWKRXW PXFK H[WUD ZRUN)LJXUH 3UHSDUDWLRQ RI WKH GDWD DV WDEOH)LJXUH 3UHSDUDWLRQ RI WKH GDWD DV FKDUW,QIRUPDWLRQ RQ WKH 'RZQORDG7KH GRFXPHQWDWLRQ LV DYDLODEOH WR \RX IUHH RI FKDUJH ,QFOXGHG GRZQORDGV IRU WKH VRIWZDUH FRGH DUH FKDUJHG 7KH SD\PHQW LV PDGH ZLWK WKH 6,0$7,& &DUG $XWRPDWLRQ 9DOXH &DUG $9&)RU WKLV FKDUJHG FRGH FUHGLWV DUH GHELWHG DJDLQVW \RXU $9& DFFRXQW。
将STEP7变量导入FLEXIBLE
一、通过符号表的方式:
首先:STEP7方面在符号表里
建立变量及相对应的符号名如下图
然后在符号表里:Symbol Table---Export—生成一个.asc的文件,关键是要记住这个文件的路径,例如 G:\shiyan.asc
其次,打开TagConverter.exe,照下图填写,源文件路径就是刚才导出的 .asc文件路径,输出路径是将转换好的文件所放的位置。
填写完毕以后 File----Start conversion,Action 里会出现下图所示的;
并且,转换完以后,会在指定的文件夹里生成EXCEL表格,如下图:
面这个对话框:
将连接名与所要导入的表格的名称选好之后导入即可看到在里导入的变量及连接
二、导出DB块的方式
首先,安装generic printer:
安装步骤:开始----控制面板----打印机和传真----添加打印机-----下一步
然后一直下一步,直到将该打印机安装完成。
其次,在STEP7方面:
打开需要导出变量的DB块, "File"---"Page Setup"--"Paper"有如下设置,
OK完成以后,打开该DB块的file----print—
该文件名连同它的保存路径一起自己手动输入,然后会在相应的地方看到生成的文件:
再利用“TagConverter.exe”这个转换器,将上图的文件转换成3个flexible
能识别的文件,
最后,在打开Flexible,新建项目,并且建立连接,保存以后,在项目----导入变量----根据刚刚转换好的文件路径,将已经转换好的变量导入,。
用EXCL导入、导出DB块
将CPU中的实际值保存为DB块的初始值
程序中的许多参数是需要通过现场调试才能设置到最佳值的,而这些值往往和初始值不同,如果下载程序时下载了DB块,这些参数将恢复到初始值,因此就需要将实际值保存为初始值。
要将实际值保存为初始值首先要“在线”选择需要保存的DB块,打开并“生成源文件”将源文件保存到“离线”项目中,此时有两种方法可将实际值保存为初始值。
1、如下图所示打开源文件,将实际值逐行复制到初始值的变量声明代码后面
复制完后编译通过即可
2、利用Excl
在S7“编辑”选项中选择“导出源文件”将源文件导出,保存为“.AWL”的文件
用Excl打开“.AWL”的文件,打开时的选项设置如下
打开后选择全文,将对齐方式选择为“右对齐”将实际值复制到对应初始值的变量声明代码后面
将修改好的文件另存为“.prn”的文件
将“.prn”的文件导入到S7源文件中,编译通过即可。
将Excl表格中的数据导入到DB块中
1、新建一个Excl表格,具体表格如下
红色框中为变量声明的固定格式
1=变量名;3=数据类型;5=初始值;8=注释;
2、4、6、7=声明变量是的特定符号,这些符号一定要用英文输入法输入。
step7中DB数据如何快速导入到TIA
如何快速将S7中的DB数据导入到博图工程
因为暂时没搞明白如何直接移植STEP7工程到博图,而S7中的DB数据又无法直接复制到博图中,在博图中添加DB数据只能逐一复制,很耗费时间,所以经过几个小时的摸索,终于可以较为方便的把S7中的DB数据导入到博图工程中。
方法如下,供大家参考。
1:TIA工程里的DB块生成源文件,以DB400为例,生成源文件并存放在文件夹中
2:STEP7中DB生成源文件
3:复制源文件中STRUCT END_STRUCT 之间的变量
4:以记事本格式打开TIA生成的源文件,并粘贴至下图红色框区域
5:用VAR和END_VAR分别替换STRUCT END_STRUCT,并保存。
6:TIA博图工程中添加外部源文件,找到步骤5中保存的文件,并打开
7:添加之后,选中右键“从源生成块”
8:如下图所示,DB数据成功导入。
马东兴2021.4.10。
把DBGRID中的数据复制到excle中
begin
x:=x+1;
ExcelApp.cells[x,1].value:=adoquery.FieldByName('k101').AsString;
except
Application.MessageBox('转换失败!','PlayerJN', mb_OK+mb_IconStop);
Exit;
end;
end;
这段代码是倪杰给我的代码,我稍微修改了一下,可以正常使用了,但是发现一个致命的缺陷:它实在太慢了。它的原理是创建一个EXCEL的OLE对象,然后从DBGrid的数据源里面一行行的读数据,读一行就向excel写一行。可以明显的看到DBGrid的窗口中记录光标在向下移动,但是效率太低了。
st;
end;
if (DBGrid1.DataSource.DataSet.State=dsInactive) then exit;
if (DBGrid1.DataSource.DataSet.RecordCount <=0) then exit;
ExcelApp.cells[x,12].value:=DBGrid1.Columns.Items[12].Title.Caption;
excelapp.cells[x,13].value:=DBGrid1.Columns.Items[15].Title.Caption;
while not adoquery.Eof do
// begin
// DBGrid1.DataSource := Datasource1;
// adoquery1.Active := false;
如何将E cel表格中的STEP 变量导入到DB块中 更新版
如何将Excel表格中的STEP7变量导入到DB块中说明:如果要将变量从Excel导入到STEP7项目中,Excel文件事先要以【带格式文本文件(空格分隔)(*.prn)】的格式保存。
之后此文件作为外部STL源文件导入到STEP7中所设置的源文件夹中。
详细过程如下:1.打开MS Office Excel,输入DB数据块的值,如图01所示。
一列输入变量名,另外一列输入数据类型:图012.数据格式DB数据表如图02所示。
图02 Excel表格模版列说明如下:•A列为变量名•B列为【:】•C列为数据类型•D列为【:=】•E列为变量初始值•F列为【;】F列为变量注释,注释前必须加【rn)】文件类型。
因此,文件名应该是?“.prn” 类型。
图03 另存为prn格式3.点击【是】确认消息图044.关闭Excel文件,点【保存】、【是】确认消息图05图065.选中保存的Excel 文件,鼠标右键点击,弹出菜单,点击【重命名】,改变后缀文件类型为prn。
图07图086.将创建的AWL文件导入到STEP 7项目中。
具体操作方法为,在SIMATIC Manager的源文件上右键,按下图打开AWL路径,,如图09~11 所示,在保存路径中选中所创建的AWL文件。
图09 AWL文件导入操作图10 选择AWL文件路径图11 AWL文件导入成功将AWL文件作为外部源导入到STEP 7中。
7.在源文件夹中双击打开导入的AWL文件,通过菜单命令【插入→块模版→DB】,将变量标签插入DB块模板。
图12 插入模版操作图13 插入的模版8.将变量表拖拽到【STRUCT】和【END_STRUCT】中间。
设置合适的【DB】块号为需要生成的号,删掉声明变量【b0】,以及【BEGIN】和【END_DATA_BLOCK】中的指令【b0:= b#16#01】。
图14 需要修改的位置图15 改好的源文件格式9.点击【保存】和【编译】图标,保存编译源DB块。
Step7下DB数据块导入导出EXCEL
Step 7 5.5 下DB数据块导入导出及DB当前值存储为默认值
1、导出DB数据块
打开一个DB块
生成源文件
输入文件名DB5,确认
选中你要导出的DB块
在Source> DB5>右键>导出源文件
在“导出源文件”对话框中确定源文件导出文件类型,选择“STL source (*.awl)”作为文件类型且文件名中必须包含扩展名“.AWL ”。
2、打开AWL文件
打开excel软件,在excel软件中选择打开命令(选择所有文件)
打开后选择全文,将对齐方式选择为“右对齐”
将修改好的文件另存为“.prn”的文件(保存的文件后缀名改一下.prn > .awl)将“.awl”的文件导入到S7源文件中,编译通过即可。
保存的文件后缀名改一下.prn > .awl
3、将excel生成后的文件导入S7
Sources >插入新对象>外部文件选择刚才重命名的awl文件
双击.awl
注意DB号,每句结束的; 保存编译,没有出错的话,就导入导出完成.。
Step75.5下DB数据块导入导出及DB当前值存储为默认值报告
Step 7 5.5 下DB数据块导入导出及DB当前值存储为默认值
导出
打开一个DB块
生成源文件
输入文件名DB5,确认
Simatic manager
Source> DB5>右键>导出源文件
新建一个excel文件
导入外部数据
按教程操作,注意导入完成后
最后的;不能少,否则编译时候会出错.
Begain
End_data_block
之间的数据可以删除
增加减少数据到你想要的数据
另存为prn格式
保存的文件后缀名改一下.prn > .awl
Sources >插入新对象>外部文件选择刚才重命名的awl文件
注意DB号,每句结束的; 保存编译,没有出错的话,就导入导出完成.
DB块的初始值传送给CPU 作为实际值Simatic manager View >oline 打开DB块
先保存,再生成源文件
选中DB
导出到文件夹Excel导入外部数据
BEGIN END_DATA_BLOCK 之间是当前数据
复制到对应区域.
在另存为prn ,改名awl ,导入, 打开, 保存编译. 注意,数据要建立得整齐一些.否则删除多余的;吧.。
在step7中如何将EXCEL文件导入DB块中
1.在EXCEL中建立表格,输入DB数据块的值,一列输入变量名,另外一列
输入数据类型:
2.初始值
如果DB块不需要赋初值,跳过到第三步。
若不是,给变量赋初值(E列)。
3.建议在上述表格中增加如下几列:
(1)在变量名列后增加一列“:”
(2)在数据类型列后增加一列“:=”
(3)最后加上一列“;”
注意:每条指令必须以字符“;”结束,否则在后面会出现编译错误。
4.另存为带“格式文本文件”此时文件类型是“.prn”
点击保存→确定→是
5.将已保存的文件重命名为“.awl”类型的文件。
6.打开step7 在SIMIATIC Manager中选择sources文件夹,选择菜单栏的Insert→External Source。
在保存路径中选中所创建的AWL文件。
点击“OPEN”7.双击导入的STL SOURCE,打开文件,选择菜单栏的Insert→Block
Template DB。
8.删除多余的附加说明(绿色文本),将变量表剪切,黏贴到“STRUCT”和“END_STRUCT”中间。
设置合适的DB块(“DATA_BLOCK DBXX”)删除掉变量“b0”以及“BEGIN”和“END_DATE_BLOCK”中的指令“b0:=6#16#01”
形成上图的形式。
9.点击“保存”再编译,如果编译通过则此DB块会在DB块文件夹中生成并保存。
STEP 7如何将 Excel 表格中的变量导入到 DB 块中
如何将 Excel 表格中的 STEP 7 变量导入到 DB 块中?说明:如果要将变量从 Excel 导入到 STEP 7 项目中, Excel 文件事先要以“Formatted Text (Space delimited)(*.prn)”的格式保存。
之后此文件作为外部STL 源文件导入到 STEP 7 中所设置的源文件夹中。
详细过程如下:序号步骤1 打开 MS Office Excel ,输入 DB 数据 块的值,如图 01 所示。
一列输入变量名,另外一列输入数据类型:图 012 初始值如果 DB 块不需要赋初值,跳过此步到第三步。
若不是,给变量赋初值(E 列)。
如图 02 所示。
图 023 建议在上述表格中增加如下几列:•在变量名列后增加一列“:”•在数据类型列后增加一列“:=”•还有一列“;”, 如图 02 所示。
在稍后生成 DB 块时,也可以增加这些语法字符。
给变量分配数据类型需要字符“:”,分配初值需要字符串“:=”。
每条指令都必须以字符“;”结束,比如 “Motor_On: bool:= false;”。
4 采用路径 “File > Save as...”, 将 Excel 保存在硬盘上。
保存文件类型为•"Formatted Text (Space delimited)(*.prn)" 文件类型。
因此,文件名应该是 “.prn” 类型。
图 035 点击 OK 确认消息•“The selected file type does not support workbooks with multiple sheets.”.6 点击 Yes 确认消息•“<Filename>.prn may contain features which are no compatible with Formatted Text (Space delimited).Would you like to save the workbook in this format?”.7 选中保存的 Excel 文件,鼠标右键点击,弹出菜单,点击“Rename”,改变文件类型•<Filename>.prn to <Filename>.awl点击 Yes 确认出现的消息。
Step7 DB块导出到EXCEL
S t e p7D B块导出到E X C E L------------------------------------------作者xxxx------------------------------------------日期xxxx没有咱工程师解决不了的事儿:工作、兴趣、热情有一次,同事想把做实验时的数据记录下来分析,但是实验现场没有上位电脑记录数据,只有一台S7-300的PLC,同事问起该怎么办呢?我当时冒出一个想法:PLC的内在很大,可以把数据记录在那里吗?同事问完后便过去了没再提,而我象很多工控工程师那样,遇到问题便有一股想解决它的冲动,动手开始干:第一步,编写一个可以按时间记录数据的程序。
这个程序原理不复杂,就是做一个时间循环,每一次循环记录一次数据,同时地址指针加1。
这个程序在其它PLC机型上做过,但是在s7-300上做的时候却遇到了一个小问题,开始用梯形图写这个小程序时怎么也找不到地址指针的正确写法?后来用语句表试着写,居然成功了(S7-300梯形图不支持形如DBW[MD30]的地址格式)。
下图便是写好的程序。
程序每6S一次将模拟量PIW0的值记录到数据块DB1当中。
程序写好了,马上挂上PLCSIM试一个效果,为了方便看出记录的效果,在测试程序时将记录PIW0暂时改成了记录MW20,并且每记录一次MW20加1。
记录的效果就是下面那张图,呵呵,用PLC的数据块记录数据的功能实现了。
数据记录到DB块里后新问题出来了,怎样把这些数据导出来呢?试着复制,不行。
查看菜单和工具栏,没有发现方法。
网络时代还可以上网查嘛,终于有了发现,通过试验我找到了将DB块的数据导出到EXCEL文档的方法,并且把自己的操作步骤记录了下来:Step7 DB块导出到EXCEL通过菜单命令“File>Generate Source”生成此数据块的源文件,该文件位于SIMATIC Source的文件夹中。
在SIMATIC Manager中选择需要编辑的源文件,点击右键弹出菜单,选择“Export Source”,保存了文件类型为:awl。
在STEP7程序中如何进行DB数据块的初始化
初始值设置:当您在数据块里已经定义了变量及其数据类型,并且不想让软件使用默认值,那么您可以在Initial Value这一栏里输入您需要的合适数值。
如果您在actual value栏里面没有进行设置,则您设置的初始值就会作为实际值下载到PLC中去。
但是这个步骤程序只会在变量第一次生成执行一次,以后您再修改初始值,都不会影响实际值,除非您再进行数据的重置。
注意:只有实际值才会被下载到PLC中,一般您在英文手册中看到的current value都是指Actual value。
只有在Data View的模式下,您才能修改实际值中的数据。
FAQ:1.在STL语句表源程序中进行初始值设置:/WW/view/en/11486603DATA_BLOCK DB 10TITLE = DB Example 10STRUCTaa : BOOL := FALSE; <- 将初始值设置为布尔型bb : INT:= 1500; <- 将初始值设置为整型cc : WORD := W#16#abcd; <-将初始值设置为word型END_STRUCT;BEGIN // 设置实际值aa := TRUE;bb := 3000;END_DATA_BLOCK注意:数据块下载后,变量aa值为TRUE,bb为30002.我怎样将在程序中将特定的初始值预置到数据块中?/WW/view/en/15399291回答:综合起来,一共有2个功能块可以预置初始值。
1)使用SFC21”FILL”,SFC 21的管脚说明:Declaration Name Type DescriptionIN BVAL ANY Value or description of the field the contents of which are to be assigned to the target field.OUT RET_VAL INT If an error occurs during processing of the function, the return value includes an error code.OUT BLK ANY Description of the field that is to be pre-assigned (target field)2)使用FC1"INIT_LOOP" (FC 1)的管脚说明: Declaration Name Type DescriptionIN DB_NR INT DB number of the DB to be initialized (e.g. 1)IN START_ADDR INT Initialization starts from this data byte (e.g. 10)IN LEN_INI INT Number of bytes to be initialized (e.g.10)IN DB_WERT_INI BYTE The data is initialized with this value(e.g. 99)OUT ERR BOOL ERROR!: e.g. DB no. is invalid, length is invalidFC1这个功能块可以检测要设置的DB块是否在,参数长度是否有效。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Step 7 5.5 下DB数据块导入导出及DB当前值存储为默认值
1、导出DB数据块
打开一个DB块
生成源文件
输入文件名DB5,确认
选中你要导出的DB块
在Source> DB5>右键>导出源文件
在“导出源文件”对话框中确定源文件导出文件类型,选择“STL source (*.awl)”作为文件类型且文件名中必须包含扩展名“.AWL ”。
2、打开AWL文件
打开excel软件,在excel软件中选择打开命令(选择所有文件)
打开后选择全文,将对齐方式选择为“右对齐”
将修改好的文件另存为“.prn”的文件(保存的文件后缀名改一下 .prn > .awl)将“.awl”的文件导入到S7源文件中,编译通过即可。
保存的文件后缀名改一下.prn > .awl
3、将excel生成后的文件导入S7
Sources >插入新对象>外部文件选择刚才重命名的awl文件双击.awl
注意DB号,每句结束的; 保存编译,
没有出错的话,就导入导出完成.。