前言 进过前面两章的介绍,今天开始正式的实战. 进制转换 很多朋友对于进制转换可能是在刚学计算机的时候有接触,后来做高级语言开发可能就慢慢忘记了.我们做工控开发的时候需要经常进行进制转换,这里和大家一起复习下. 一个字节等8位(1byte = 8bit),可以存储2^8(0-256)的数字.所以我们要对8.256等数字要敏感. int16(short), int32(int), int64(long) 分别是占用2个字节.4个字节.8个字节,Single(float)也是占用4个字节. bool…
环境和工具 服务端电脑IP:192.168.1.130 客户端电脑IP:192.168.1.120 1.在服务端电脑运行IoTClientTool 2.运行Wireshark 3.在客户端电脑运行IoTClientTool 4.Wireshark得到如下报文 报文分析,plc的连接 我们看到上面连接西门子plc抓取到了八条报文.其中有tcp的三次握手.和对最后一次响应的回复,然后就是西门子特有的两次初始化指令的请求和响应. 两次初始化指令 不同型号的西门子plc有不同的初始化指令,同型号的指令固…
前言 上篇我们实现了ModBusTcp协议的客户端读写,可是在很多时候编写业务代码之前是没有现场环境的.总不能在客户现场去写代码,或是蒙着眼睛写然后求神拜佛不出错,又或是在办公室部署一套硬件环境.怎么说都感觉不太合适,如果我们能用软件仿真模拟硬件那不就完美了,以后有各种不同的硬件协议接口都模拟出来,而不是每个硬件都买一套回来部署了做测试. 真要用软件仿真模拟也是可以的,客户端是对协议的请求报文发送和响应报文的解析,服务端其实就是请求报文的接收和响应报文的发送,正好和客户端的动作相反. 前面我们在…
前言 前面我们介绍了ModBusTcp协议.今天我们接着来介绍ModBusRtu协议.和ModBusTcp不同的是ModBusRtu基于串口通信,ModBusTcp是基于Tcp以太网通信. 所以我们在讲解ModBusRtu协议之前会先介绍下串口通信. 串口通信 串口出现在1980年前后,当初主要目的是用来做电脑外设设备的连接,如鼠标.键盘等.现在最新的电脑慢慢的取消了原始的串口接口,不过依然广泛用于工控和测量等设备. 串口通信参数 串口通信指的是串口按位(bit)发送和接收字节,串口通信参数主要…
系列目录 IoTClient开发1 - 你也可以写个聊天程序 IoTClient开发2 - 你也可以写个服务器 IoTClient开发3 - ModBusTcp协议客户端实现 IoTClient开发4 - ModBusTcp协议服务端模拟 IoTClient开发5 - ModBusRtu协议 PCL西门子S7-200Smar客户端实 PCL西门子S7-200Smar服务端模拟 Bacnet协议的客户端实现和服务端模拟 Socket异步方式实现协议 .... 关于组件 这是一个物联网设备通讯协议实…
iOS开发网络篇—HTTP协议 说明:apache tomcat服务器必须占用8080端口 一.URL 1.基本介绍 URL的全称是Uniform Resource Locator(统一资源定位符) 通过1个URL,能找到互联网上唯一的1个资源 URL就是资源的地址.位置,互联网上的每个资源都有一个唯一的URL 2.URL中常见的协议 (1)HTTP 超文本传输协议,访问的是远程的网络资源,格式是http:// http协议是在网络开发中最常用的协议 (2)file 访问的是本地计算机上的资源,…
iOS开发网络篇—HTTP协议 说明:apache tomcat服务器必须占用8080端口 一.URL 1.基本介绍 URL的全称是Uniform Resource Locator(统一资源定位符) 通过1个URL,能找到互联网上唯一的1个资源 URL就是资源的地址.位置,互联网上的每个资源都有一个唯一的URL 2.URL中常见的协议 (1)HTTP 超文本传输协议,访问的是远程的网络资源,格式是http:// http协议是在网络开发中最常用的协议 (2)file 访问的是本地计算机上的资源,…
很久没有写博客了(至少自己感觉很长时间没有写了),没办法啊,楼主也是需要生活的人啊,这段一直都在找工作什么的.(整天催我代码的人,还望多多谅解啊,我会坚持写我们的项目的,还是需要相信我的,毕竟这是一个耗时耗力的事情,需要所有参与者都坚持的事情.) 上面扯淡完毕后,下面进入我们今天的整体.看到这篇博客的题目,估计很多人都会问,这个组件是不是有些显的无聊了,说到web通信,很多人都会想到ASP.NET SignalR,或者Nodejs等等,实现web的网络实时通讯.有关于web实时通信的相关概念问题…
看到这篇文章的题目,估计很多人都会问,这个组件是不是有些显的无聊了,说到web通信,很多人都会想到ASP.NET SignalR,或者Nodejs等等,实现web的网络实时通讯.有关于web实时通信的相关概念问题,在这里就不再做具体的介绍了,有兴趣的可以自行百度. 下面我们介绍一款WebSocket组件websocket-sharp的相关内容. 一.websocket-sharp组件概述 websocket-sharp是一个C#实现websocket协议客户端和服务端,websocket-sha…
原文地址:https://www.ibm.com/developerworks/cn/websphere/library/techarticles/1305_jiangpl_rad/1305_jiangpl_rad.html 本文选择 IBM WebSphere Application Server 作为 web services 的运行环境,并选择 IBM Rational Application Developer(以下简称 RAD)for WebSphere 作为本文的开发平台. Web…
workerman-chat(PHP开发的基于Websocket协议的聊天室框架)(thinkphp也是支持socket聊天的) 一.总结 1.下面链接里面还有一个来聊的php聊天室源码可以学习 2.workerman-chat是一个以workerman作为服务器容器,使用PHP开发的基于Websocket协议的一个可分布式部署的聊天室框架. 3.thinkphp也是支持socket聊天的:链接:PHP socket聊天 - ThinkPHP框架:http://www.thinkphp.cn/c…
基于Hadoop开发网络云盘系统客户端界面设计初稿 前言: 本文是<基于Hadoop开发网络云盘系统架构设计方案>的第二篇,针对界面原型原本考虑有两个方案:1.类windows模式,文件夹.文件方式,操作习惯完全按照Windows方式进行,提供右键菜单管理命令.2.浏览列表式,提供常规界面按钮式命令.本文采用的方式是文件清单列表式,至于第一种方式,另列专题进行说明. 一.界面原型 二.设计说明 连接管理:建立连接.断开连接.设置连接参数 文件操作:浏览文件.上传文件.下载文件.删除文件.导入文…
webservice协议 客户端: 客户端生成使用soapUI生成 外部提供webservice地址,地址后加?wsdl.选择好目录然后生成,放到项目中实现 服务端: web.xml平级目录下创建server-config.wsdd 增加配置 <service name="目录" provider="java:RPC"> <parameter name="className" value="项目对应的className…
请细致阅读以下的许可协议条款和条件之前下载或使用苹果软件.   这些条款和条件构成你和苹果之间的法律协议.   iOS开发人员程序许可协议   目的 你想使用苹果软件(例如以下定义)来开发一个或多个应用程序(例如以下定义)Apple-branded产品执行iOS. 苹果愿意授予您有限的许可使用苹果软件开发和測试您的应用程序在本协议规定的条款和条件. 开发的应用程序在此协议下能够分布在四个方面:(1)通过应用程序商店,假设选择苹果,(2)通过VPP / B2B项目站点,假设选择苹果,(3)在一个有…
原文:使用Surging Mqtt 开发基于WS的MqttClient客户端 最近一段时间由于要做一套智能设备系统,而有幸了解到Surging中的Mqtt broker,学习了很多东西本篇文章基于Surging开源的.netcore项目有兴趣的朋友可点击此处进行了解.话不多说我们来基于Surging 中的WS与MqttClient结合来开发服务端MqttClient的使用. 准备工作 开发环境:  Visual Studio 2017 15.9.5 .netCore版本:2.2.102(目前Su…
import java.lang.Thread.State;import java.util.Iterator;import java.util.List; import org.apache.thrift.TException;import org.apache.thrift.protocol.TBinaryProtocol;import org.apache.thrift.protocol.TProtocol;import org.apache.thrift.transport.TFrame…
合肥程序员群:49313181.    合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入) Q  Q:408365330     E-Mail:egojit@qq.com smack介绍: 上一篇我介绍了服务端openfire整合现有系统用户,当服务器整合并且搭建完成后,需要做的工作就是写客户端聊天工具了.要么基于pc要么基于移动(Android和IOS).所以这一篇我们一起学习一下smack库,smack是用java写的开源客户端XMPP (Jabber)库,在老版本中sma…
web入门 请求: request 浏览器向服务器发信息 响应:response 服务器回复浏览器 一个请求发出,一定有且仅有一个响应   http协议:对浏览器客户端余服务器的数据传输规范   http协议版本 http1.0:当前浏览器客户端与服务端建立连接后,只能发送一次请求,一起请求后连接关闭 http1.1:当前浏览器客户端与服务端建立连接后,可以多次连接,无需断开   请求行中的GET称之为请求方式,请求方式有:    POST.GET.HEAD.OPTIONS.DELETE.TRA…
一.URL 1.基本介绍 URL的全称是Uniform Resource Locator(统一资源定位符) ,通过1个URL,能找到互联网唯一的1个资源 ,URL就是资源的地址,位置,互联网上的每个资源都有一个唯一的URL  2.URL中常见的协议 (1)HTTP:  超文本传输协议,访问的是远程的网络资源,格式是http:// ,http协议是在网络开发中最常见的协议 (2)file :访问的是本地计算机上的资源,格式是file://(不用加主机地址) (3)mailto :访问的是电子邮件地…
首先理解下面三个概念: WSGI:全称是Web Server Gateway Interface,WSGI不是服务器,python模块,框架,API或者任何软件,只是一种规范,描述web server如何与web application通信的规范. uwsgi:与WSGI一样是一种协议,是uWSGI服务器的独占协议,用于定义传输信息的类型(type of information),每一个uwsgi packet前4byte为传输信息类型的描述,与WSGI协议是两种东西,据说该协议是fcgi协议的…
在Python Web开发中,我们一般使用Flask.Django等web框架来开发应用程序,生产环境中将应用部署到Apache.Nginx等web服务器时,还需要uWSGI或者Gunicorn.一个完整的部署应该类似这样: Web Server(Nginx.Apache) <-----> WSGI server(uWSGI.Gunicorn) <-----> App(Flask.Django) 要弄清这些概念之间的关系,就需要先理解WSGI协议. WSGI是什么 WSGI的全称是…
一.DNS协议 作用将域名解析为IP   类似于我们只需要知道中央一台,中央二台,而不需要知道它的频率,方便记忆. java dns 域名解析协议实现 1 域名解析,将域名可转换为ip地址InetAddress也可以通过使用getAddress()来获得IP地址,但是它的返回值是一个4个字节的数组.因此尽管getAddress()在获得IP方面是有用的,但却不适于用来输出. package dns; import java.net.InetAddress; import java.net.Unk…
一.开发所需要的技术 手机端需要Android/iOS开发人员,服务器端需要php/数据库开发人员, 如果再做网页版的话,WEB开发也是要的. 即时通讯 GPS地图 群聊 差不多 对 http  socket tcp udp等协议熟练使用  还有就是有做过地图 GPS定位等功能  二.网上实例 1. 仿陌陌客户端 (http://www.oschina.net/p/momo-ios-app) 软件功能:模仿陌陌客户端,功能很相似,注册.登陆.上传照片.浏览照片.浏览查找附近会员.关注.取消关注.…
out.println("GET /shopping/index.html HTTP/1.1");//请求行 包括请求方式,文件路径, http协议版本(必写)请求头.... out.println("Aceept: */*");//客户端能够处理的文件类型(不是必须) out.println("Host: 192.168.1.111:8080");//客户端要访问的主机及服务器的端口(必写),否则会出现400(请求错误) out.println…
在前一篇的博客中,我使用Xfire1.x来开发了WebServies的服务端. 但是如果你访问Apache的官网,可以看到xfire已经被合并了. 最新的框架叫做CXF. Apache CXF = Celtix + XFire. CXF 继承了 Celtix 和 XFire 两大开源项目的精华, 提供了对 JAX-WS 全面的支持,并且提供了多种 Binding .DataBinding.Transport 以及各种 Format 的支持,并且可以根据实际项目的需要,采用代码优先(Code Fi…
XML的数据协议组成 名词 说明 md5 message-digest algorithm 5 http hypertext transfer protocol xml extensible markup language 交易交互是以http协议作为数据传输协议,这里定义发起交易请求的一端为客户端,客户端需要以http post 数据流(非表单方式)的方式提交交易请求,如下所示: 假设有一个查询指定玩法可销售期信息的交易请求,那么http消息体的内容如下: <?xml version=”1.0…
之前实习做的一个移动端的页面 需要的功能有图片上传 点击客户端的返回按钮 有提示(即与客户端有交互) 遇到不少的坑 总结一下问题 1.图片上传功能  使用工具 百度的webuploader 暂时遇到的坑 1.1  删除图片 实际上并没有完全删除 需要自己在源码上添加 详情 看github的提问  https://github.com/fex-team/webuploader/issues/594 1.2 上传的图片 旋转角度有问题 比如 在上传页面看的图片缩略图 是水平显示的 但上传到后台 显示…
httplib 1.httplib 是 python中http 协议的客户端实现,可以使用该模块来与 HTTP 服务器进行交互. httplib的内容不是很多,也比较简单.以下是一个非常简单的例子,使用httplib获取google首页的html: ------------------------------------------------------- import httplib conn =httplib.HTTPConnection("www.google.cn") con…
NTP(Network Time Protocol,网络时间协议)是由RFC 1305定义的时间同步协议,用来在分布式时间服务器和客户端之间进行时间同步.NTP基于UDP报文进行传输,使用的UDP端口号为123. 使用NTP的目的是对网络内所有具有时钟的设备进行时钟同步,使网络内所有设备的时钟保持一致,从而使设备能够提供基于统一时间的多种应用. 对于运行NTP的本地系统,既可以接收来自其他时钟源的同步,又可以作为时钟源同步其他的时钟,并且可以和其他设备互相同步. 相信文本介绍看多也厌倦了,就不多…
一:资源下载获取路径: 二:配置方法 1:前提是安装好plsql开发工具 具体安装步骤略 2:配置 简化版的客户端工具. 具体格式:可以参照下文来修改编写使用. orcl_1521 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.242.146)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl ) ) ) orcl_1522 = (DE…