西门子PLC(S7-1500)与Ubuntu系统上位机的通信
![](/themes/default/assets/images/h5/bid.png)
待托管
![](/themes/default/assets/images/h5/pepole.png)
4人竞标
![](/themes/default/assets/images/h5/view.png)
3454人浏览
需求详情
竞标可查看联系方式
西门子PLC(S7-1500)与Ubuntu系统上位机的通信
1. 上位机Ubuntu系统,使用C++语言,不可以使用Siemens的特别语言;一个上位机,连接多个西门子PLC。
2. 下位机Siemens PLC,需要使用PLC自带的编程语言,不能用第三方的语言;
3. 需要建立Ubuntu上位机和多个西门子PLC的通讯。上位机可以把一定格式的数据下发到任何一个PLC;任何一个PLC可以把一定格式(格式和下发的可能不一样)的数据上传到上位机。
4. 最好使用EtherCat;实时通讯,延迟不超过0.1秒,最好做到0.01秒以内。
5. 需要给出源代码;程序可以修改。
6. 需要安装包。
7. 如果需要第三方的开源程序,则需要下载好。安装通讯程序的时候,不能要求连接到第三方。
8. 作为下一个任务,上位机的程序,除了和PLC通讯以外,需要读MySQL数据库某一个表的数据,读完后,把读出的数据在规定的日期时间的瞬间,下发到规定那个的西门子PLC。另外,任何一个PLC上传数据到上位机后,需要写入MySQL数据库中的另一个表中。
9. 上位机和多个PLC的通讯,我方希望可以使用以下三种方式的之一(但是不排除其它通讯方式,尤其是更加先进的方式):
1) S7通信; 有很多可以选择的开源或商业库,包括http://s7.net、pronodave、libnodave、sharp7。
2) ModbusTCP Client:这里是指西门子PLC做Client(即客户端),Ubuntu上位机做Server(即服务器)。
3) OpenProtocol Client:这里是指西门子PLC做TCPClient(即客户端),Ubuntu上位机做TCPServer(即服务器)。