搜索
bottom↓
回复: 43

局域网内的收标签卡基站,基站间时间同步和程序更新方法..

[复制链接]

出0入0汤圆

发表于 2017-4-10 10:10:42 | 显示全部楼层 |阅读模式
如题,现在在做一个基站(STM32F407+lwip+KSZ8863),基站间通过以太网连接通信,都挂在交换机上,差不多有200个基站,数据都汇总到一台电脑上,电脑采集管理这些基站的数据。

现在有2个问题:
1、基站间要做到时间的同步,1秒或1秒内最好。
2、基站的程序更新问题。

对于时间同步,比较简单的协议有SNTP,不知效果和稳定性如何。如果用powerlink有点大材小用。各位有什么好的方法吗?
对于所有基站程序更新问题,以前没有接触过,这么多基站是一个一个升级呢还是所有基站同时升级呢?用自定义协议还是公共的协议呢?【上位机软件可以自己开发】

先谢谢啦。

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2017-4-10 10:53:30 | 显示全部楼层
跑1588协议,用软件时间戳就足够了,基站做slave,电脑做master.

出0入0汤圆

 楼主| 发表于 2017-4-10 11:11:00 | 显示全部楼层
pmair 发表于 2017-4-10 10:53
跑1588协议,用软件时间戳就足够了,基站做slave,电脑做master.

谢谢,似乎这个协议还有不少人在用,可以先研究下。

出0入0汤圆

 楼主| 发表于 2017-4-10 13:28:00 | 显示全部楼层
程序升级用TFTP是否比较方便些呢

出0入0汤圆

 楼主| 发表于 2017-4-11 08:37:58 | 显示全部楼层
自己顶一顶

出0入0汤圆

 楼主| 发表于 2017-4-11 08:45:15 | 显示全部楼层
pmair 发表于 2017-4-10 10:53
跑1588协议,用软件时间戳就足够了,基站做slave,电脑做master.

有相关的demo吗,,这块的资料我找了下相对比较少

出65入0汤圆

发表于 2017-4-11 11:57:39 来自手机 | 显示全部楼层
gitHub上有一个stm32f4的开源ptpd。稍微修改即可使用。

出0入0汤圆

 楼主| 发表于 2017-4-11 14:35:05 | 显示全部楼层
luweixuan 发表于 2017-4-11 11:57
gitHub上有一个stm32f4的开源ptpd。稍微修改即可使用。

谢谢推荐,,我去找找

出0入0汤圆

 楼主| 发表于 2017-4-11 14:41:24 | 显示全部楼层
程序升级大家有好的方案吗

出10入0汤圆

发表于 2017-4-11 15:52:40 | 显示全部楼层
NTP+RTC就够用了,每天校准一次就可以了,PTP有些浪费了

出0入0汤圆

发表于 2017-4-11 17:21:20 | 显示全部楼层
1588需要硬件支持的,如果精度要求秒级,sntp就够啦

出0入0汤圆

 楼主| 发表于 2017-4-12 08:57:49 | 显示全部楼层
zzhang_hui 发表于 2017-4-11 15:52
NTP+RTC就够用了,每天校准一次就可以了,PTP有些浪费了

嗯,,现在板子上有RTC,用SNTP会更加简单些吧。

这个还要服务器,PC端有可以使用的软件充当其功能吗?

出0入0汤圆

 楼主| 发表于 2017-4-12 08:59:02 | 显示全部楼层
wswh2o 发表于 2017-4-11 17:21
1588需要硬件支持的,如果精度要求秒级,sntp就够啦

2楼不是说可以用软件的吗?

出0入0汤圆

 楼主| 发表于 2017-4-12 09:01:58 | 显示全部楼层
guxingganyue 发表于 2017-4-11 14:41
程序升级大家有好的方案吗

昨天想了下,程序升级的方案

基站上有外接的W25Q256 flash,所以基站当TCP Client,电脑做server,PC把升级的文件广播给所有基站,基站收到后先存储到flash上,最后等所有基站文件接收存储完毕后统一开始升级。

这样所有基站同时升级,速度也比较快。不知此方法有人用过没?

出65入0汤圆

发表于 2017-4-12 12:44:52 来自手机 | 显示全部楼层
F407就有IEE1588的硬件,通过普通交换机,可以轻松达到实时的亚毫秒时间同步精度。

出65入0汤圆

发表于 2017-4-12 12:47:58 来自手机 | 显示全部楼层
而且IEE1588一个域内可以实时协商动态组成主从时间同步网络,不用担心其他因为服务器当掉就没法同步的问题。

出65入0汤圆

发表于 2017-4-12 12:49:03 来自手机 | 显示全部楼层
一个域没节点数是255个,正好满足你的需求。

出0入0汤圆

 楼主| 发表于 2017-4-12 17:09:04 | 显示全部楼层
luweixuan 发表于 2017-4-12 12:44
F407就有IEE1588的硬件,通过普通交换机,可以轻松达到实时的亚毫秒时间同步精度。 ...

太好了,,我看407的介绍中就有下面的语句:

Supports hardware PTP (precision time protocol) in accordance with IEEE 1588 2008
(PTP V2) with the time stamp comparator connected to the TIM2 input


谢谢,,后面我好好弄下怎么使用1588。时间同步就用1588吧,不用SNTP了。

出0入0汤圆

 楼主| 发表于 2017-4-12 17:10:02 | 显示全部楼层
wswh2o 发表于 2017-4-11 17:21
1588需要硬件支持的,如果精度要求秒级,sntp就够啦

Supports hardware PTP (precision time protocol) in accordance with IEEE 1588 2008
(PTP V2) with the time stamp comparator connected to the TIM2 input


407硬件支持1588的。太好了

出0入0汤圆

发表于 2017-4-12 17:44:12 | 显示全部楼层
guxingganyue 发表于 2017-4-12 17:10
Supports hardware PTP (precision time protocol) in accordance with IEEE 1588 2008
(PTP V2) with t ...

1588开发难度大于sntp。
1、电脑硬件一般不支持1588(不太确认)
2、交换机也要支持1588

出0入0汤圆

 楼主| 发表于 2017-4-12 20:13:09 | 显示全部楼层
wswh2o 发表于 2017-4-12 17:44
1588开发难度大于sntp。
1、电脑硬件一般不支持1588(不太确认)
2、交换机也要支持1588 ...

哇,,这么多要求啊。看来这个1588还得好好评估下,谢谢提醒

出65入0汤圆

发表于 2017-4-13 01:43:01 来自手机 | 显示全部楼层
不需要电脑做服务器,可以使用一个硬件节点做服务器即可。同步要求不高的场合不需要专用交换机。

出65入0汤圆

发表于 2017-4-13 01:45:21 来自手机 | 显示全部楼层
电脑可以使用软件来和主节点做同步,这个软件网络上有。使用这个软件只做从同步不需要注册交钱,但是要做主同步,需要注册交钱?

出0入0汤圆

 楼主| 发表于 2017-4-13 08:46:23 | 显示全部楼层
luweixuan 发表于 2017-4-13 01:45
电脑可以使用软件来和主节点做同步,这个软件网络上有。使用这个软件只做从同步不需要注册交钱,但是要做主 ...

谢谢提醒。。

出0入0汤圆

 楼主| 发表于 2017-4-13 08:47:35 | 显示全部楼层
luweixuan 发表于 2017-4-11 11:57
gitHub上有一个stm32f4的开源ptpd。稍微修改即可使用。

昨晚找到这个东西了。我有时间了研究下

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出65入0汤圆

发表于 2017-4-13 12:23:59 来自手机 | 显示全部楼层
有个在F4上移植好的,你可以找找。带嵌入式操作系统和网络协议栈的。

出65入0汤圆

发表于 2017-4-13 12:26:33 来自手机 | 显示全部楼层
https://github.com/mpthompson/stm32_f4_ptpd

出0入0汤圆

 楼主| 发表于 2017-4-13 14:25:29 | 显示全部楼层
luweixuan 发表于 2017-4-13 12:26
https://github.com/mpthompson/stm32_f4_ptpd

嗯,已下载,,,谢谢

出0入0汤圆

发表于 2017-4-14 22:11:17 来自手机 | 显示全部楼层
linuxptp.sourceforge.net

出0入0汤圆

发表于 2017-4-14 22:12:50 来自手机 | 显示全部楼层
可以借鉴linux下的ptp工程!不必硬件时间戳,用软件即可。

出0入0汤圆

发表于 2017-4-14 22:19:31 来自手机 | 显示全部楼层
参考.ixxat.com/products/products-industrial/time-syncronization/ieee-1588-ptp-protocol-software

出0入0汤圆

 楼主| 发表于 2017-4-14 22:41:53 | 显示全部楼层
本帖最后由 guxingganyue 于 2017-4-14 22:50 编辑
pmair 发表于 2017-4-14 22:19
参考.ixxat.com/products/products-industrial/time-syncronization/ieee-1588-ptp-protocol-software


电脑做master,需要跑什么协议或软件吗?

出0入0汤圆

发表于 2017-4-15 01:31:33 | 显示全部楼层
时间同步这个,自己实现一下也不难:
先通信两次,确定收发数据的延迟;再发个正确时间,接收端把收到的时间加上延迟就行了。

出65入0汤圆

发表于 2017-4-15 08:20:12 来自手机 | 显示全部楼层
29楼的软件就可以在电脑端做master

出0入0汤圆

 楼主| 发表于 2017-4-16 19:26:13 | 显示全部楼层
pmair 发表于 2017-4-14 22:19
参考.ixxat.com/products/products-industrial/time-syncronization/ieee-1588-ptp-protocol-software

https://www.ixxat.com/products/p ... p-protocol-software

这个网站一直打不开啊,,公司和家里都一样。。。是一个电脑软件?

出0入0汤圆

 楼主| 发表于 2017-4-16 19:26:59 | 显示全部楼层
crtfor 发表于 2017-4-15 01:31
时间同步这个,自己实现一下也不难:
先通信两次,确定收发数据的延迟;再发个正确时间,接收端把收到的时 ...

还是直接用标准的协议比较方便些

出65入0汤圆

发表于 2017-4-17 17:58:02 来自手机 | 显示全部楼层
guxingganyue 发表于 2017-4-16 19:26
https://www.ixxat.com/products/products-industrial/time-syncronization/ieee-1588-ptp-protocol-soft ...

是个协议栈,要收费的。

出0入0汤圆

 楼主| 发表于 2017-4-17 20:15:12 | 显示全部楼层
luweixuan 发表于 2017-4-17 17:58
是个协议栈,要收费的。

那你说的29楼的软件指的是什么软件,难道不是31楼说的这个软件吗

出65入0汤圆

发表于 2017-4-18 00:27:28 来自手机 | 显示全部楼层
一个开源,一个商用,能一样吗

出0入0汤圆

 楼主| 发表于 2017-4-18 08:49:17 | 显示全部楼层
luweixuan 发表于 2017-4-18 00:27
一个开源,一个商用,能一样吗

额,29楼的源码下载下来了,linux没接触过,不知这个东西怎么用。。

以后PC上跑的是win系统,不会使用linux的,这个可以在win7使用吗



附:29楼下的软件源码,rar后缀改为7z

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2017-4-18 18:48:04 | 显示全部楼层
本帖最后由 crtfor 于 2017-4-18 19:00 编辑
guxingganyue 发表于 2017-4-16 19:26
还是直接用标准的协议比较方便些


没看出来哪里方便了。

依你的需求(1秒的精度)做一个时间同步服务器太小题大作了。
其实也就是个批量设置时间,如果通信延迟不高的话(比如100ms以下),直接发个正确的时间就行了。而且也没必要同时发,轮询方式就行。

不过这是我个人意见,也许你就是想借此机会搭一个时间服务器

简单看了一下PTP协议,纳秒级的同步精度,而且是socket实时同步的,你是要让所有节点用一个时钟源的吗?

出65入0汤圆

发表于 2017-7-26 13:09:31 | 显示全部楼层
guxingganyue 发表于 2017-4-18 08:49
额,29楼的源码下载下来了,linux没接触过,不知这个东西怎么用。。

以后PC上跑的是win系统,不会使用li ...

楼主是否已经搞定?

出0入0汤圆

 楼主| 发表于 2017-7-26 13:39:13 | 显示全部楼层
luweixuan 发表于 2017-7-26 13:09
楼主是否已经搞定?

谢谢关注啊,上周刚调通,暂时使用SNTP了,效果还不错,现在只上了32个设备。

使用lwip自带的sntp客户端,电脑上暂时使用Tftpd。暂时没有找到一个比Tftpd好的服务器端软件

出0入0汤圆

 楼主| 发表于 2017-7-26 13:40:15 | 显示全部楼层
crtfor 发表于 2017-4-18 18:48
没看出来哪里方便了。

依你的需求(1秒的精度)做一个时间同步服务器太小题大作了。

SNTP基本满足啦。。。你可以看下。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-17 21:15

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表