工控网首页
>

应用设计

>

wcs仓库控制系统

wcs仓库控制系统

2020/6/19 13:07:00

自动化立体仓库的高效运转是各种互联仓储技术协同工作的硕果,其中对于底层物流设备控制的最重要的一环就是wcs仓库控制系统。

(一)料箱车介绍

大鹿智造实施过的自动化仓库中使用的最多的就是料箱车(它储存货位基数大、较堆垛机而灵活、对仓库垂直高度要求低)。

1.基本的作业动作:取货、放货、行驶。

(1)取货动作详解:伸缩臂伸到适当位置,打开扳指,伸缩臂回收。

(2)放货反之。

(3)行驶动作:采用倍加福二维码扫码行驶(其精度可以达到1个单位)。

2.料箱车型号:伸缩臂分为单伸位、双伸位;货舱分为滚筒式、平仓式。行驶轨迹可分为:单巷道行驶、多向道换向行驶等。实际自动化立体仓库的料箱车选择可以根据仓库需求选择适用型号的车子。

(二)wcs系统同料箱车交互

料箱车最常用的工控编程就是PLC编程。但是大鹿智造wcs系统不是直接通过plc来控制的,而是通过res(料箱车底层的子控制系统)这个调度系统来控制。其中res调度系统直接和plc通讯控制料箱车的各种动作以及对其自身的安全保护、信息参数的监测。

WCS控制料箱车的实质就是通讯res。其使用最多最简单的就是TCP/IP协议Socket通信的方式。这种通信的流程:

1、【服务端】启动,创建ServerSocket对象,等待连接。

2、【客户端】启动,创建Socket对象,请求连接。

3、【服务端】接收连接,调用accept方法,并返回一个Socket对象。

4、【客户端】Socket对象,获取OutputStream,向服务端写出数据。

5、【服务端】Scoket对象,获取InputStream,读取客户端发送的数据。

6、【服务端】Socket对象,获取OutputStream,向客户端回写数据。

7、【客户端】Scoket对象,获取InputStream,解析回写数据。

8、【客户端】释放资源,断开连接。

(三)客户端实现流程

private static string SocketClient(client){

while (true)

{

//定义客户端接收到的信息大小

byte[] arrList = new byte[1024 * 1024];

///接收到的信息大小(所占字节数)

int length = client.Receive(arrList);

string msg = DateTime.Now + Encoding.UTF8.GetString(arrList, 0, length);

Console.WriteLine("发送命令时收到的信息:"+msg);

client.Close();

return msg;

}

//关闭客户端

client.Close();

(四)服务端实现流程

public static void Listening(){

Socket tcpServer = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);//创建socket对象

tcpServer.Bind(new IPEndPoint(IPAddress.Parse("127.0.0.0"), 8000));//绑定IP和申请端口

Console.WriteLine("服务器已启动,等待连接.........");

while (true)//循环等待客户端的连接

{

Socket clientSocket = tcpServer. Accept ();

Console.WriteLine((clientSocket.RemoteEndPoint as IPEndPoint).Address + "已连接");

Client client = new Client(clientSocket);

clientList.Add(client);

}

}

总结

WCS控制系统根据仓库实际作业流程通过这种通信方式对res下发相应的指令,控制小车运动,当小车执行完某一个动作后会返回给wcs仓库控制系统报文它此次运动情况的报文,WCS系统就可以根据报文内容实时监控小车的状态,以此来判断它是否满足执行下次作业运动的要求。如果某次作业运动出现异常,WCS系统可以把这些异常打印展示出来,以便相关人员及时处理。保障仓库高效作业。

审核编辑(
王静
)
投诉建议

提交

查看更多评论