问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

施耐德PLC可以和三菱触摸屏通讯吗,怎么建立通讯,施耐德plc的 型号是TSX3721101

发布网友 发布时间:2022-04-07 16:51

我来回答

3个回答

懂视网 时间:2022-04-07 21:12

工作中需要在施耐德楼控系统上添加后台管理功能和手机控制功能,单位采购的施耐德的产品仅仅是用于控制现场设备的楼控模块及上位机编程与HMI,我们需要在此基础上,自主开发手机端控制功能,那么就需要通过建立后台工程用于往施耐德的硬件上发信号或者修改其数据库。

本文即是建立在此想法的基础上,记录一下如何采用Spring、Hibernate、Rest这个框架构建一个可以快速开发的后台管理框架。

1.使用eclipse新建一个普通JAVA工程

技术分享

2.右键工程名,选择属性,点击"Project Facets"将“Dynamic Web Module勾选上,一个动态Web工程即建好

技术分享

3.将Spring、Hibernate、Rest所需的jar文件全部复制到Web工程的WEB-INF/lib文件夹下(建议将jar文件复制到工程下面而不是引用,否则还需在tomcat下面放置一份jar包,否则会照成运行时报错)

4.新建Web.xml用于配置Spring信息

<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

	xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:javaee="http://java.sun.com/xml/ns/javaee"

	xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"

	version="2.4">

	<display-name>TacControlServerWeb</display-name>

	<distributable />

	<context-param>

		<param-name>contextConfigLocation</param-name>

		<param-value>

  classpath:/spring/applicationContext*.xml

 </param-value>

	</context-param>

	<filter>

		<filter-name>encodingFilter</filter-name>

		<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>

		<init-param>

			<param-name>encoding</param-name>

			<param-value>UTF-8</param-value>

		</init-param>

		<init-param>

			<param-name>forceEncoding</param-name>

			<param-value>true</param-value>

		</init-param>

	</filter>

	<filter-mapping>

		<filter-name>encodingFilter</filter-name>

		<url-pattern>/*</url-pattern>

	</filter-mapping>

	<listener>

		<!-- 自动装配ApplicationContext的配置信息 -->

		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

	</listener>

	<listener>

		<!-- org.springframework.web.util.IntrospectorCleanupListener监听器主要负责处理由JavaBean 
			Introspector使用而引起的缓冲泄露 -->
		<listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>

	</listener>

	<listener>

		<!-- ContextLoaderListener实现ServletContextListener监听器接口,而ServletContextListener只负责监听Web容器的启动和关闭的事件。RequestContextFilter实现ServletRequestListener监听器接口,该监听器监听HTTP请求事件,Web服务器接收的每次请求都会通知该监听器。通过配置RequestContextFilter,Spring容器与Web容器结合的更加密切。 -->

		<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>

	</listener>


	<!-- rest监听器配置 -->

	<servlet>
		<display-name>JAX-RS REST Servlet</display-name>
		<servlet-name>JAX-RS REST Servlet</servlet-name>
		<servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet</servlet-class>
		<init-param>
			<param-name>com.sun.jersey.config.property.packages</param-name>
			<param-value>szx.rest</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>JAX-RS REST Servlet</servlet-name>
		<url-pattern>/szxrest/*</url-pattern>
	</servlet-mapping>

	<servlet>
		<description></description>
		<display-name>FindInfo</display-name>
		<servlet-name>FindInfo</servlet-name>
		<servlet-class>szx.web.servlet.FindInfo</servlet-class>
	</servlet>
	<servlet-mapping>
		<servlet-name>FindInfo</servlet-name>
		<url-pattern>/FindInfo</url-pattern>
	</servlet-mapping>


	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>

</web-app>
5.配置了Spring后,在Spring的配置文件中配置Hibernate信息和自动注入的方式,如下applicationContext-core.xml

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"

	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"

	xmlns:context="http://www.springframework.org/schema/context"

	xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx"

	xsi:schemaLocation="http://www.springframework.org/schema/beans

						http://www.springframework.org/schema/beans/spring-beans-2.5.xsd

						http://www.springframework.org/schema/aop

						http://www.springframework.org/schema/aop/spring-aop-2.5.xsd

						http://www.springframework.org/schema/context

						http://www.springframework.org/schema/context/spring-context-2.5.xsd

						http://www.springframework.org/schema/jee

						http://www.springframework.org/schema/jee/spring-jee-2.5.xsd

						http://www.springframework.org/schema/tx

						http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">

	<context:property-placeholder location="classpath:jdbc.properties" />

	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
		destroy-method="close">

		<property name="driverClassName" value="${jdbc.driverClassName}" />
		<property name="url" value="${jdbc.url}" />
		<property name="username" value="${jdbc.username}" />
		<property name="password" value="${jdbc.password}" />
		<property name="maxActive" value="2000" />
		<property name="maxIdle" value="1000"></property>
		<property name="maxWait" value="25000" />
		<property name="poolPreparedStatements" value="false" />
		<property name="defaultAutoCommit" value="true" />

	</bean>

	<!-- Hibernate SessionFactory -->
	<bean id="sessionFactory"
		class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
		<property name="dataSource" ref="dataSource" />
		<property name="packagesToScan">
			<list>
				<value>szx</value>
			</list>
		</property>
		<property name="hibernateProperties">
			<value>
				hibernate.dialect=${hibernate.dialect}
				hibernate.query.substitutions=true 'Y', false 'N'
				hibernate.cache.use_second_level_cache=true
				hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider
				hibernate.jdbc.fetch_size=50
				hibernate.jdbc.batch_size=25
				hibernate.show_sql=true
				hibernate.format_sql=false
				hibernate.use_sql_comments=true
			</value>
		</property>
		<property name="lobHandler" ref="lobHandler" />
	</bean>

	<bean id="lobHandler" class="org.springframework.jdbc.support.lob.OracleLobHandler">
		<property name="nativeJdbcExtractor" ref="nativeJdbcExtractor" />
	</bean>

	<bean id="nativeJdbcExtractor"
		class="org.springframework.jdbc.support.nativejdbc.CommonsDbcpNativeJdbcExtractor" />

	<!-- Transaction manager for a single Hibernate SessionFactory -->
	<bean id="transactionManager"
		class="org.springframework.orm.hibernate3.HibernateTransactionManager">
		<property name="sessionFactory" ref="sessionFactory" />
	</bean>

	<!-- Enable annotation-based configuration -->
	<context:annotation-config />

	<!-- Enable classpath scanning for managed components -->
	<context:component-scan base-package="szx" name-generator="szx.core.spring.CustomBeanNameGenerator"/>

	<!-- Enable @AspectJ support -->
	<aop:aspectj-autoproxy />

	<!-- Enable @Transactional support -->
	<tx:annotation-driven />

	<aop:config>
		<aop:advisor advice-ref="txAdvice"
			pointcut="execution(* *..service.*Manager.*(..))" order="100" />
	</aop:config>

	<tx:advice id="txAdvice">
		<tx:attributes>
			<tx:method name="*" rollback-for="Throwable" />
		</tx:attributes>
	</tx:advice>

</beans>
6.新建jdbc.properties文件,配置数据库连接(数据库可以适配MySQL、Oracle、SqlServer)

#hibernate.dialect=cn.walle.core.support.hibernate.Oracle10gDialect
hibernate.dialect=org.hibernate.dialect.SQLServerDialect
#jdbc.driverClassName=oracle.jdbc.driver.OracleDriver
#jdbc.driverClassName=com.microsoft.jdbc.sqlserver.SQLServerDriver
#jdbc.url=jdbc:sqlserver://localhost:1433;integratedSecurity=true;DatabaseName=taclogdata
jdbc.driverClassName=net.sourceforge.jtds.jdbc.Driver
jdbc.url=jdbc:jtds:sqlserver://localhost:1433;integratedSecurity=true;DatabaseName=taclogdata
#jdbc.url=jdbc:oracle:thin:@192.168.103.9:1521:orcl
#jdbc.url=jdbc:oracle:thin:@219.237.193.91:1521:orcl
#jdbc.url=jdbc:oracle:thin:@iwmds.rdh.com:1521:orcl
jdbc.username=tacvista
jdbc.password=tacvista
7.工程结构如下图

技术分享






构建施耐德楼控系统数据库后台服务器示例工程—(工程创建)

标签:楼宇自控   spring   hibernate   

热心网友 时间:2022-04-07 18:20

肯定可以通讯的,都是知名品牌,要PLC和触摸屏通讯,一般是在触摸屏上设置!
设置的时候你选择几个要点:通讯的COM,通讯的方式RS485,RS232,RS422取决于你PLC的通讯方式,波特率一般不用改!
再就是做好正确的通讯线,做通讯线会在三菱触摸屏使用手册上会有的!
深圳精展达高工0755-33181913,13480903564一级代理威纶触摸屏weinview触摸屏以及非标设备程序编程开发,质量保证,价格优惠,买威纶,精展达

热心网友 时间:2022-04-07 19:38

数据线可以直接通讯
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
如何将一个文件排在文件夹的第一个? 试管婴儿胚胎分级 试管婴儿胚胎分级8优代表什么 成人高考是成绩出来之后再填志愿吗 成考有必要报第二志愿吗 成人高考被第一志愿录取就不能选择第二志愿吗,分数什么学校都能进,老... 成教可以填报二批志愿吗? 高压电线是什么钢丝 地下水资源会枯竭吗 济南受污染的原因 富士变频器空载不报警带负荷OU3报警怎么处理 三菱a700变频器ou3怎么修 富士变频器在恒速运行时显示OU3故障代码过电压,怎么回事 变频器OU3报警 信息管理与信息系统文科生可不可以报? 英威腾变频器0u3报警是什么意思 南京邮电大学通达学院信息管理与信息系统专业是文科还是理科专业? invt变频器OU3怎么清除? (高考)信息管理与信息系统算文科专业还是理科专业?理科女生适合学么... 要文科还是理科信息管理和信息系统文理科都可以报吗 必看:单位和个人要缴什么税都在这里 南昌大学信息管理与信息系统属于文科还是理科,招文科生吗?我高中是学文的,拜托大 信息管理与信息系统专业属于文史类还是理工类?招考的时候招的是文科还是... 单位和个人都要缴什么税 企业和个人共同缴纳的有哪些 浙大的管理学院(尤其是信管专业)属于文科理科? 信息管理与信息系统算文科专业还是理科专业?理科女生适合学么?以后好找工作么?薪水大概在什么程度? 大学管理类专业是属于文科吗?如“信息管理与信息系统” 请问成考的经济管理类,信息管理与信息系统是属于理科还是文科 信息管理与信息系统属于理工科还是文科? mitsubishi,a700变频器报警代码e.ou3 _百度问一问 求文档: RB变频器出现OU3是什么原因 冬天戴口罩,眼镜起雾,怎么办 居民养老保险计算方法 龙南县恒顺矿业有限责任公司怎么样? 工商处罚我个人无证经营和虚假宣传罚3万,不交罚款怎么样? 虚假宣传工商说20w罚款 虚假宣传的处罚是什么 工商打电话说有人举报我虚假宣传+要罚款 拒交工商罚款,这种情况的后果是什么? 公司网站被人举报虚假宣传,工商局要罚款怎么办 虚假宣传处罚标准是什么 工商局对虚假宣传罚款多少 梦见到刚去世人的家里借香是什么意思? 虚假宣传工商处罚标准 工商局虚假宣传处罚标准 宝宝一岁多可以吃榴莲披萨吗 虚假宣传如何处罚 mbaa是什么?