西门子PLC代理授权经销商
国际化工业自动化科技产品供应商,西门子G120、G120C V20 变频器; S120 V90伺服控制系统;6EP电源;电线;电缆;
网络交换机;工控机等工业自动化的设计、技术开发、项目选型安装调试等相关服务是专业从事工业自动化控制系统、机电一体化装备和信息化软件系统
集成和硬件维护服务的综合性企业。与西门子品牌合作,只为能给中国的客户提供值得信赖的服务体系,我们
的业务范围涉及工业自动化科技产品的设计开发、技术服务、安装调试、销售及配套服务领域。建立现代化仓
储基地、积累充足的产品储备、引入万余款各式工业自动化科技产品,我们以持续的卓越与服务,取得了年销
售额10亿元的佳绩,凭高满意的服务赢得了社会各界的好评及青睐。其产品范围包括西门子S7-SMART200、S7-200CN、S7-300、S7-400、S7-1200、S7-1500、S7-ET200SP等各类工业自动化产品。西门子授权代理商、西门子一级代理商 西门子PLC模块代理商﹐西门子模块代理商供应全国范围:
我们还提供。
西门子中国授权代理商——浔之漫智控技术(上海)有限公司,本公司坐落于松江工业区西部科技园,西边和全球zhuming芯片制造商台积电毗邻,
东边是松江大学城,向北5公里是佘山国家旅游度假区。轨道交通9号线、沪杭高速公路、同三国道、松闵路等
交通主干道将松江工业区与上海市内外连接,交通十分便利。
目前,浔之漫智控技术(上海)有限公司将产品布局于中、高端自动化科技产品领域,
PLC模块S7-200、S7-1200、S7-300、S7-400、ET200分布式I/O等
HMI触摸屏、SITOP电源、6GK网络产品、ET200分布式I/O SIEMENS 驱动产品MM系列变频器、G110G120变频器、直流调速器、电线电缆
如果调用 SetAsDefault API 的过程中发生故障,将抛出“EngineeringTargetInvocationException”异常。 以下情况下会出现异常: •在项目库中,在测试中/运行中的版本中调用 SetAsDefault() 时 • 全局库为只读时 参见 连接到 TIA Portal(页 82) 打开项目 (页 122) 5.6.26 获取类型的默认版本 要求 • TIA PortalOpenness 应用程序已连接到 TIA Portal。 请参见连接到 TIA Portal (页 82) • 已通过TIA Portal Openness 应用程序打开一个项目。 请参见打开项目 (页 122)使用 TIA PortalOpenness 获取某一类型项目库和全局库的默认版本,还可以使用 TIA Portal Openness应用程序检查版本是否为默认版本。默认版本被视为类型的shouxuan版本。 程序代码 ... ILibrary myLibrary =...; LibraryType typeA = ...;// from myLibrary vartypeADefaultVersion = typeA.Versions.First((version) =>version.IsDefault); //from default version , user can get detailsrelated to version like Author, Guid, etc. var nameofType =typeADefaultVersion.LibraryTypeName; var guid =typeADefaultVersion.Guid; var versionNumber =typeADefaultVersion.VersionNumber; var authoroftheVersion =typeADefaultVersion.Author; var status = typeADefaultVersion.State;... 参见 连接到 TIA Portal (页 82) 打开项目 (页 122) 5.6.27改进了类型一致性状态 要求 • TIA Portal Openness 应用程序已连接到 TIA Portal。 请参见连接到 TIAPortal (页 82) • 已通过 TIA Portal Openness 应用程序打开一个项目。 请参见打开项目(页 122) 应用 可使用 TIA Portal Openness 检查类型是否一致。类型可具有不同的一致性状态。如果Dependent Type 正在使用 Dependency.Type 的默认版本,则状态为 Consistent,如果Dependent Type 未使用 Dependency Type 的默认版本,则状态为Inconsistent。文件夹级一致性状态显示结构下的任何类型为 Consistent 或 Inconsistent。 StatusAPI 是 Siemens.Engineering.Library.Types.LibraryType 和Siemens.Engineering.Library.Types.LibraryTypeFolder 类的组成部分,为ConsistencyStatustype 类型。 为了使 TIA Portal Openness用户能够检查类型/文件夹的一致性状态,将为以下各项引入 “Status”属性: • SystemFolder • UserFolder• Type 可使用该属性准备不一致类型列表,以对其执行特殊操作: var listOfInconsistentTypes =Folder.Types.Where(x => x.Status ==ConsistencyStatus.DefaultVersionInconsistent); ConsistencyStatus枚举支持下述值: 值 说明 DefaultVersionInConsistent Dependent Type 未使用Dependency Type 的默认版本 Consistent Depende 修改以下程序代码以从项目库中读取“Types”系统文件夹支持的状态属性: ...ILibrary myProjectLibrary = Project.ProjectLibrary;LibraryTypeSystemFolder typeFolder = myProjectLibrary.TypeFolder;var systemTypeFolderConsistencyStatus = typeFolder.Status;if(systemTypeFolderConsistencyStatus ==ConsistencyStatus.DefaultVersionInConsistent) { //Do something. }// List of InConsistentType var listOfInCosistentTypes =typeFolder.Types.Where(x => x.Status ==ConsistencyStatus.InConsistent); foreach(var type inlistOfInCosistentTypes) {// From type, user can get details likeAuthor, Guid etc var nameOfType = type.LibraryTypeName; var guid =type.Guid; var authorOfTheVersion = type.Author; var status =type.State; } ... 修改以下程序代码以从项目库中读取“User Folder”的状态属性: ... ILibrarymyProjectLibrary = Project.ProjectLibrary; LibraryTypeUserFolderuserFolder = myProjectLibrary.TypeFolder.Folders.Find("folder1");var userTypeFolderConsistencyStatus = userFolder.Status;if(userTypeFolderConsistencyStatus ==ConsistencyStatus.Default修改以下程序代码以从项目库中读取“Individual Type”的状态属性:... ILibrary myProjectLibrary = Project.ProjectLibrary;LibraryTypeUserFolder userFolder =myProjectLibrary.TypeFolder.Folders.Find("folder1"); ILibraryTypeblockType = userFolder.Types.Find("block1"); varblockTypeConsistencyStatus = blockType.Status;if(blockTypeConsistencyStatus ==ConsistencyStatus.DefaultVersionInConsistent) { //Do something. }... 说明 该属性也可以相似的方法在全局库中使用。 异常处理 如果选定的任何类型或文件夹为空或不属于源库的组成部分,则将抛出ArgumentNullException 异常。 var projectLibrary =Project.ProjectLibrary; var type1 =projectLibrary.Types.FindType("Type1"); var status =typeFolder.Status; // throws ArgumentNullException 参见 连接到 TIAPortal (页 82) 访问设备、网络和连接的功能5.7.1 打开“设备和网络”编辑器 要求 • TIA Portal Openness 应用程序已连接到 TIA Portal。请参见连接到 TIA Portal (页 82) • 已打开一个项目。 请参见打开项目 (页 122) 应用可采用以下两种方法之一,通过 API 接口打开“设备和网络”编辑器: • ShowHwEditor(View.Topology 或View.Network 或 View.Device):从项目 打开“设备和网络”编辑器。 •ShowInEditor(View.Topology 或 View.Network 或 View.Device):在“设备和网络”编辑器中显示指定的设备。 使用 View 参数定义打开编辑器时显示的视图: • View.Topology •View.Network • View.Device 程序代码 修改以下程序代码以打开“设备和网络”(Devices &networks) 编辑器: // Open topology view from project private staticvoid OpenEditorDevicesAndNetworksFromProject(Project project参见导入组态数据 (页 1067) 5.7.2 查询 PLC 和 HMI 目标 要求 • TIA Portal Openness应用程序已连接到 TIA Portal。 请参见连接到 TIA Portal (页 82) • 已打开一个项目。请参见打开项目 (页 122) 应用 您可以决定软件基础可在 TIA Portal Openness API 中用作 PLC目标 (PlcSoftware) 还是 HMI 目 标。程序代码:PLC 目标 修改以下程序代码以确定某一设备项是否可用作 PLC目标: // Returns PlcSoftware private PlcSoftwareGetPlcSoftware(Device device) { DeviceItemCompositiondeviceItemComposition = device.DeviceItems; foreach (DeviceItemdeviceItem in deviceItemComposition) { SoftwareContainersoftwareContainer = deviceItem.GetService(); if (softwareContainer!= null) { Software softwareBase = softwareContainer.Software;PlcSoftware plcSoftware = softwareBase as PlcSoftware; returnplcSoftware; } } return null; } 程序代码:HMI 目标 修改以下程序代码以确定某一设备项是否可用作HMI 目标: //Checks whether a device is of type hmitarget privateHmiTarget GetHmiTarget(Device device) { DeviceItemCompositiondeviceItemComposition = device.DeviceItems; foreach (DeviceItemdeviceItem in deviceItemComposition) { SoftwareContainersoftwareContainer = deviceItem.GetService(); if (softwareContainer!= null) { Software softwareBase = softwareContainer.Software;HmiTarget hmiTarget = softwareBase as HmiTarg 地址对象的访问属性 要求• TIA Portal Openness 应用程序已连接到 TIA Portal。 请参见连接到 TIA Portal(页 82) • 已打开一个项目。 请参见打开项目 (页 122) • 对于写入访问,PLC 已处于离线状态。应用 可以使用 TIA Portal Openness API 接口来获取或设置地址对象属性。 还可为 OB 指定当前过程映像。可访问以下属性: 属性名称 数据类型 可写入 访问 说明 IsochronousMode BOOL r/w 动态属性激活/禁用等时模式 ProcessImage Int32 r/w 动态属性 设置/获取过程映像分区 号。InterruptObNumber Int64 r/w 动态属性 设置/获取中断组织块编号 (仅传统控制器) StartAddressInt32 r/w 模型化属性 设置/获取新的 StartAddress 值。 限制 • 属性 StartAddress – 设置StartAddress 可能隐式改变相同模块上相对 IO 类型的 StartAddress。更 改输入地址会更改输出地址。 –并非所有设备均支持写访问。 – TIA Portal Openness 中不支持压缩地址 – 通过 TIA PortalOpenness 更改地址不会重新连接已分配的标签。 • 属性 InterruptObNumber – 只有使用 S7-300 或S7-400 控制器时才能在设置中访问。S7-400 控制器支持写访问程序代码:获取或设置地址对象的属性修改以下程序代码以访问地址对象的等时模式: Address address= ...; // read attribute boolattributeValue = (bool)address.GetAttribute("IsochronousMode"); //write attribute address.SetAttribute("IsochronousMode", true);修改以下程序代码以访问地址对象的 ProcessImage 属性: Address address= ...; // readattribute int attributeValue =(int)address.GetAttribute("ProcessImage"); // write attributeaddress.SetAttribute("ProcessImage", 7); 修改以下程序代码以访问地址对象的InterruptObNumber 属性: Address address= ...; // read attribute longattributeValue = (long)address.GetAttribute("InterrruptObNumber");// write attribute address.SetAttribute("InterrruptObNumber", 42L);//default value = 40 修改以下程序代码以访问地址对象的 StartAddress属性:address.AssignProcessImageToOrganizationBlock(obX); }catch(RecoverableException e) { Console.WriteLine(e.Message); } //remove this PIP-OB assignment try {address.AssignProcessImageToOrganizationBlock(null); }catch(RecoverableException e) { Console.WriteLine(e.Message); }5.7.4 访问模块的通道 要求 • TIA Portal Openness 应用程序已连接到 TIA Portal。 请参见连接到TIA Portal (页 82) • 已打开一个项目。 请参见打开项目 (页 122) 应用对于模拟量输入模块等信号模块,通常单个模块内具有多个通道。通常,通道可多次提供相似功能,例如,一个四通道的模拟量输入模块可测量四个电压值。 要访问某一模块的所有通道,请使用设备项的通道属性。