php向plc发送数据 php与plc通讯
电脑向PLC传输数据
你的问题好像问错了,STEP7是PLC得编程软件,你往STEP7里写数据是没有意义,我就默认为你是想把数据传入PLC里。
为临安等地区用户提供了全套网页设计制作服务,及临安网站建设行业解决方案。主营业务为成都网站设计、做网站、临安网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
如果是往PLC里写数据这个要看你电脑那端的数据通过什么方式往PLC发了,正常来说可以用串口,网口,或者通过一些通讯软软件走MODBUS和OPC之类的,如果是想用串口和网口发,那么PC端和PLC端都需要编程实现,而且有可能需要加硬件;如果是走通讯的,在PLC端配置一下OPC SERVER或MODBUS SLAVE块就可以
如何在PHP中使用socket+XML发送数据包
接收指定IP的数据包,其他IP都要过滤吧,那就用防火墙来搞吧
使用的是client段的获取方式,用client的可以指定IP,代码大概如下
public void SendMessage()
{
ASCII = Encoding.ASCII;
// 构造用于发送的 字节缓冲.
Byte[] sendBytes = ASCII.GetBytes(SEND_MESSAGE);
// 构造用于接收的 字节缓冲.
Byte[] recvBytes = new Byte[256];
// IP地址.
IPAddress localAddr = IPAddress.Parse("192.168.19.81");
// 接入点.
IPEndPoint ephost = new IPEndPoint(localAddr, PORT);
// 第一个参数:AddressFamily = 指定 Socket 类的实例可以使用的寻址方案。
// Unspecified 未指定地址族。
// InterNetwork IP 版本 4 的地址。
// InterNetworkV6 IP 版本 6 的地址。
//
// 第二个参数:SocketType = 指定 Socket 类的实例表示的套接字类型。
// Stream 一个套接字类型,支持可靠、双向、基于连接的字节流,而不重复数据,也不保留边界。
// 此类型的 Socket 与单个对方主机通信,并且在通信开始之前需要建立远程主机连接。
// 此套接字类型使用传输控制协议 (Tcp),AddressFamily 可以是 InterNetwork,也可以是 InterNetworkV6。
//
// 第三个参数:ProtocolType = 指定 Socket 类支持的协议。
// Tcp 传输控制协议 (TCP)。
Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
try
{
// 尝试连接主机.
s.Connect(ephost);
//Console.WriteLine("向服务器发送到了:{0}", SEND_MESSAGE);
// 向主机发送数据.
// s.Send(sendBytes, sendBytes.Length, SocketFlags.None);
// 接收服务器的应答.
Int32 bytes = s.Receive(recvBytes, recvBytes.Length, SocketFlags.None);
StringBuilder buff = new StringBuilder();
// while (bytes 0)
// {
// 将缓冲的字节数组,装换为字符串.
// String str = ASCII.GetString(recvBytes, 0, bytes);
String str = "";
for (int i = 0; i recvBytes.Length; i++)
{
str = str + recvBytes[i];
}
int iCount = 0;
iCount = int.Parse(str.Substring(13, 6)) ;
// 加入字符串缓存
buff.Append(str);
// 再次接受,看看后面还有没有数据.
//bytes = s.Receive(recvBytes, recvBytes.Length, SocketFlags.None);
// }
textBox1.Text = iCount.ToString();
}
catch (Exception ex)
{
MessageBox.Show("连接/发送/接收过程中,发生了错误!");
MessageBox.Show(ex.Message);
//Console.WriteLine("连接/发送/接收过程中,发生了错误!");
//Console.WriteLine(ex.Message);
//Console.WriteLine(ex.StackTrace);
}
finally
{
s.Close();
}
怎么用串口调试工具接收PLC发送的数据
1、在电脑端安装一个COM-HC的串口调试工具,打开串口调试软件如下图所示。
2、我们首先设置的就是调试工具的端口号与波特率,按着设备在电脑端识别到的端口号来设置,波特率要按着设备的波特率来设置。
3、接着就是设置接收到的报文的显示形式的,系统默认二进制显示,我们要将其改成16进制显示,如下图直接勾选即可。
4、由于显示的接收到的报文很多,我们一时看不过来,我们可以将它保存到指定的文件夹下,方便我们二次查看,如下图所示设置路径。
5、前面的这些步骤设置完成后就可以直接打开串口,接收报文了,如下图所示打开串口按键。
6、串口调试工具的上部分为接收报文界面,下半部分为自己发送的报文,来得到设备的回复,如下图所示。
python 和 PLC通讯走TCP通讯,接收数据问题
这种问题快捷的可能是直接传输字节序列(查ascii码表),
确定接收端正确后,再看python这边如何编码
PLC中生成的数据如何传输到服务器上的数据库中?
这个具体情况不同:
asp网站所使用的access数据库,直接FTP上传到网站程序目录中即可。
php网站使用的mysql数据库,可以备份为.sql文件,然后到网站服务器后台,导入备份然后执行还原即可导入原数据。
net网站使用的sql数据库,常见的是备份为.bak文件,然后网站后台导入备份,继续执行还原即可导入原数据。
另外对于mysql,如果可以拿到源文件,也可以直接打包传送到服务器,然后解压放置到服务器mysql目录即可。
PHP与PHP数据传输
这需要用ajax来实现
index.php
html
titlephp+jquery+ajax+json简单小例子/title
?php
header("Content-Type:text/html;charset=utf-8");
?
head
script type="text/javascript" src="
script type="text/javascript"
$(function() {
$("#subbtn").click(function() {
var params = $("input").serialize();
var url = "1.php";
$.ajax({
type: "post",
url: url,
dataType: "json",
data: params,
success: function(msg){
var backdata = "您提交的姓名为:" + msg.name +
"br / 您提交的密码为:" + msg.password;
$("#backdata").html(backdata);
$("#backdata").css({color: "green"});
}
});
});
});
/script
/head
body
plabel for="name"姓名:/label
input id="name" name="name" type="text" /
/p
plabel for="password"密码:/label
input id="password" name="password" type="password" /
/p
span id="backdata"/span
pinput id="subbtn" type="button" value="提交数据" //p
/body
/html
1.php代码:
?php
//接收数据-处理数据-返回数据
echo json_encode($_POST);
?
本文名称:php向plc发送数据 php与plc通讯
URL地址:http://pwwzsj.com/article/hpgsjo.html