我已经用INDY写的程序跟GPRS能通讯上了,现在要考虑实际使用在相互之间怎么样收发数据,我们现在是把GPRS用在小区抄表中,这种抄表就跟平时家里的水表电表一样固定1个月或2个月抄一次,但也有可能是临时想看,但是每天看的可能性基本上没有,所以我想请教一下,是不是在需要抄表数据的时候临时建立连接进行数据送发,还是平时就算不抄也要心跳保持GPRS跟电脑的连接?

解决方案 »

  1.   

    没必要保持连接 ,
    把GPRS做Server,等电脑连接的时候再发数据如果楼主坚持想用心跳发送的话
    建议用UDP协议,因为UDP不用建立连接,消耗资源不大
      

  2.   

    如果GPRS做Server,电脑做Client,那要怎么做,因为我看GPRS的AT指令是GPRS用TCPSETUP连接电脑这边的IP和Port,那GPRS这边应该是Client,如果不先发数据告诉GPRS电脑的IP那GPRS就没办法连接到电脑,感觉好矛盾,不知道怎么处理了?
      

  3.   

    我建议GPRS做客户端,因为GPRS是多个,电脑做服务端(有外网固定IP地址),GPRS不需要实时在线,只需根据设置,如每小时、每天或某某时间,将抄到的数据上传给服务端,然后断开即可。如果服务端需要主动向GPRS要数据,在GPRS可以做一个振铃唤醒功能,服务端通过振铃让GPRS与服务端建立连接,然后服务端发送命令就行了。
      

  4.   

    服务端通过振铃让GPRS与服务端建立连接,服务端是不是类似于通过GPRS跟下位的GPRS通讯告知?如果GPRS跟服务端之间没有任务有形的线连接,那怎么告知GPRS呢?
      

  5.   

    我现在做的跟楼上的有点区别,我们现在刚开始做无线,现在是把GPRS做在中继里,中继跟表有另外的通讯,我现在只要通过电脑采用无线方式读取中继里的数据。
      

  6.   

    GPRS给电脑通讯,必须通过网络的,你说的无线方式是指什么?
      

  7.   

    GPRS通过移动网到网络,通过路由设置端口转发到局域网内的一台电脑上