在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

英創信息技術IEEE1588協議驅動分布式系統高精度同步觸發簡介

英創信息技術 ? 來源:英創信息技術 ? 作者:英創信息技術 ? 2020-02-12 10:35 ? 次閱讀

IEEE1588是精確網絡對時協議,簡稱PTP。它通過硬件實現的時間標簽(hardware time stamp),使對時精度達到亞微秒級(< 1us),大大高于常規的網絡對時協議(NTP)。PTP協議的另一個特色是它可輸出精確時間同步的硬件脈沖,通常稱為PPS脈沖。在網絡化的嵌入式系統中,利用PTP的硬件PPS脈沖,可對處于不同位置的多臺設備實現同步觸發的功能。這對分布式系統的數據采集、實時控制都具有非常的意義。

英創公司的多款嵌入式主板,ESM7000、ESM6802和ESM6800,其網絡接口均支持PTP協議,且可輸出PPS脈沖,因此是分布式智能設備的理想嵌入式平臺。以下將以ESM7000為例,介紹實現分布式同步觸發的軟硬件方案。

基于PTP的同步觸發軟件流程

ESM7000預裝的Linux平臺文件系統中,已包含了PTP對時及硬件時間同步的完整工具,即ptp4l和phc2sys,同時可方便的控制PPS脈沖的使能。在這個基礎上,按照圖1所示流程就可實現同步觸發的功能。

圖1同步觸發軟件流程

在實際的測試中發現,PTP的對時精度與網絡環境有密切關系。在單一的100M網絡環境所獲得的設備間的同步精度在±200ns;而在1000M網環境,同步精度就下降到±1us;混合網絡環境,同步精度可差至±15us。

同步觸發脈沖的硬件方案

所謂硬件方案,是指圖1中觸發脈沖生成器的實現方案。以PTP協議生成的周期性PPS脈沖為基礎,由應用程序生成觸發使能信號,再通過一個簡單的D觸發器生成最后的觸發脈沖。硬件方案涉及3個信號如下:

●PPS_OUT:整秒脈沖輸出,即周期固定為1秒,在ESM7000上,PPS的脈沖寬度為10ns,上升沿有效。

●TRG_EN:觸發使能,通常用一位GPIO來實現,其高電平有效。

●TRG_PULSE:觸發脈沖,上升沿有效;在TRG_EN為低時,將強制TRG_PULSE為低;當TRG_EN為高時,后續的PPS_OUT脈沖上升沿將鎖存高電平,從而是TRG_PULSE變高電平。TRG_PULSE脈沖上升沿將將作為系統采集控制硬件單元的觸發輸入,觸發各個嵌入式設備同步動作。

圖2同步觸發脈沖生成電路原理

在圖2中,TRG_PULSE還可反饋給ESM7000主板,通知同步觸發已發生。但不是必須的。

大部分ESMARC主板均可支持PTP同步觸發功能。對不同型號的主板,PPS脈沖輸出管腳有所不同,如下表所示:

主板型號 PTP網口 PPS信號管腳 備注
ESM7000系列 eth0 CN2.GPIO0
ESM6802系列 eth0 CN2.GPIO24 V2.4版才支持
ESM6800系列 eth1 CN2.GPIO22 不能使用SD
ES6801 eth0 CN1.GPIO0 不能使用CAN1

對選擇哪一位GPIO管腳作為TRG_EN,本方案沒有限制??筛鶕O備的具體情況來確定。

對同步觸發從設備測試

本測試用從設備的“當前時間+ 偏移量”來代替主設備發布的觸發時間TRGTIME,就可用簡單的腳本測試整個觸發過程,具體的腳本如下:

#!/bin/sh
# trg_en_3 $1 [$2] [$3]
# $1 = 0, off ptp; = 1: on ptp
# $2 = number of seconds to delay from cuurent time
# $3 = ip:port
PATH="/usr/bin:$PATH"
E_NOARGS=85
re='^[0-9]+$'
TRG_EN_GPIO="gpio1"
TRG_EN_DIRECTORY="/sys/class/em_gpio/em_gpio/$TRG_EN_GPIO"
PHC2SYSLOG="/tmp/phc2syslog.txt"
DELAY=10
# if no arg, exit
if [ -z "$1" ]
then
echo "Usage: `basename $0` filename"
exit $E_NOARGS
fi
# if $1 != 1, off ptp and exit
if [ "$1" -ne 1 ]
then
echo 0 > /sys/class/ptp/ptp0/pps_enable
pkill phc2sys
pkill ptp4l
exit 0
fi
# get trigger delay is available, default = 10(s)
if [ $# -ge 2 ]
then
DELAY="$2"
fi
# now we start to make trg_en step by step
echo "step 1: setup gpio1 as trg_en"
if [ ! -d "$TRG_EN_DIRECTORY" ]
then
echo "config $TRG_EN_GPIO as trg_en"
echo 1 > /sys/class/em_gpio/em_gpio/export
fi
echo out > /sys/class/em_gpio/em_gpio/$TRG_EN_GPIO/direction
echo 0 > /sys/class/em_gpio/em_gpio/$TRG_EN_GPIO/value
echo "step 2: start ptp"
phc2sys -s eth0 -c CLOCK_REALTIME -w -m -u 4 > $PHC2SYSLOG &
sleep 1
ptp4l -i eth0 -s &
echo "step 3: wait phc2sys sync convergence"
num_rms=0
while [ "$num_rms" -lt 3 ]
do
RMS_ARRAY=$(cat $PHC2SYSLOG | tail -n 3 | sed -r 's/.*rms[ ]+([0-9]+).*/\1/g')
# echo "$RMS_ARRAY"
for rms in $RMS_ARRAY
do
if ! [[ $rms =~ $re ]]
then
echo "$rms is NOT an integer!"
break
fi
echo "$rms"
if [ "$rms" -lt 350 ]; then
let "num_rms += 1"
fi
done
# clear log file if rms is convergence
if [ "$num_rms" -ge 3 ]; then
echo "rms is convergence ($num_rms)"
cat /dev/null > $PHC2SYSLOG
else
let "num_rms = 0"
sleep 2
fi
done
echo "step 4: enable pps, and setup trigger time"
echo 1 > /sys/class/ptp/ptp0/pps_enable
TRGTIME=$(date +%s) # get current date in seconds
let "TRGTIME = $TRGTIME + $DELAY"
PPSTIME=$(cat /sys/class/pps/pps0/assert | cut -d '.' -f 1)
echo "TRGTIME = $TRGTIME PPSTIME = $PPSTIME"
echo "step 5: wait pps time reach trigger time"
while [ "$PPSTIME" -lt "$TRGTIME" ]
do
sleep 0.1
PPSTIME=$(cat /sys/class/pps/pps0/assert | cut -d '.' -f 1)
done
echo "step 6: now PPSTIME = TRGTIME, set trg_en"
echo 1 > /sys/class/em_gpio/em_gpio/$TRG_EN_GPIO/value
echo "step 7: wait pps time reach trigger time + 1"
let "TRGTIME = $TRGTIME + 1"
while [ "$PPSTIME" -lt "$TRGTIME" ]
do
sleep 0.1
PPSTIME=$(cat /sys/class/pps/pps0/assert | cut -d '.' -f 1)
done
echo "step 8: clear trg_en"
echo 0 > /sys/class/em_gpio/em_gpio/$TRG_EN_GPIO/value
echo "basename $0 done"

示波器可觀察到,上述腳本產生的TRG_EN信號,準確使能PPS脈沖產生與之上升沿完全同步的觸發脈沖TRG_PULSE。

對分布式系統同步觸發功能感興趣的客戶,可通過郵件support@emtronix.com與英創公司技術部門聯系,以了解詳細的實現代碼。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11320

    瀏覽量

    209845
  • 嵌入式主板
    +關注

    關注

    7

    文章

    6085

    瀏覽量

    35438
收藏 人收藏

    評論

    相關推薦

    基于ptp的分布式系統設計

    。 PTP概述 PTP是一種網絡時間同步協議,它允許網絡中的設備同步它們的時鐘。PTP基于IEEE 1588標準,旨在提供亞微秒級別的時間
    的頭像 發表于 12-29 10:09 ?128次閱讀

    ptp和GPS時間同步的對比

    與原理 PTP是一種網絡時間同步協議,它基于IEEE 1588標準。PTP旨在通過以太網提供高精度的時間
    的頭像 發表于 12-29 09:46 ?154次閱讀

    中國唯一受邀出席2024 IEEE ISPCS企業!賽思ePRTC系統成5G時頻同步網最強Buff!

    2024年10月7日-11日,國際IEEE1588精密時鐘同步測量、控制和通信研討(簡稱ISPCS)在日本東京成功舉辦。賽思受邀攜面向5G時頻同步網的最強Buff—ePRTC系統及相關
    的頭像 發表于 10-12 11:20 ?406次閱讀
    中國唯一受邀出席2024 <b class='flag-5'>IEEE</b> ISPCS企業!賽思ePRTC<b class='flag-5'>系統</b>成5G時頻<b class='flag-5'>同步</b>網最強Buff!

    分布式故障在線監測|高精度技術選用 行波特征 故診模型

    、高精度技術選用、行波特征及故障診斷模型的相關信息: 一、分布式故障在線監測: 1、工作原理:通過在監測對象(輸電線路)的不同位置分布式地安
    的頭像 發表于 10-11 12:00 ?116次閱讀

    在KeyStone器件實現IEEE1588時鐘方案

    電子發燒友網站提供《在KeyStone器件實現IEEE1588時鐘方案.pdf》資料免費下載
    發表于 09-26 09:10 ?0次下載
    在KeyStone器件實現<b class='flag-5'>IEEE1588</b>時鐘方案

    基于分布式存儲WDS的金融信云承載數據庫類關鍵應用

    基于分布式存儲WDS的金融信云承載數據庫類關鍵應用
    的頭像 發表于 08-16 09:42 ?286次閱讀
    基于<b class='flag-5'>分布式</b>存儲WDS的金融信<b class='flag-5'>創</b>云承載數據庫類關鍵應用

    TSN時鐘同步 | PTP對時案例演示——基于NXP i.MX 8M Plus

    )。 IEEE1588協議簡稱精確時鐘協議PTP(Precision Timing Protocol),它的全稱是“網絡測量和控制系統的精密時鐘同步
    發表于 07-10 10:28

    技術分享】EtherCAT 分布式時鐘簡介

    分布式時鐘是EtherCAT技術亮點之一,其精準同步使得整個系統都運行在統一的時鐘下,每個EtherCAT從站的同步性遠小于1us。本文將介
    的頭像 發表于 06-04 08:25 ?725次閱讀
    【<b class='flag-5'>技術</b>分享】EtherCAT <b class='flag-5'>分布式</b>時鐘<b class='flag-5'>簡介</b>

    用于IEEE 1588同步以太網的82P33814同步管理單元評估板數據手冊

    電子發燒友網站提供《用于IEEE 1588同步以太網的82P33814同步管理單元評估板數據手冊.rar》資料免費下載
    發表于 05-09 18:20 ?0次下載
    用于<b class='flag-5'>IEEE</b> <b class='flag-5'>1588</b>和<b class='flag-5'>同步</b>以太網的82P33814<b class='flag-5'>同步</b>管理單元評估板數據手冊

    智慧物流中心建設:訊維分布式智慧終端技術的核心作用

    ,包括訂單信息、貨物信息、運輸信息等。訊維分布式終端技術通過其強大的分布式計算能力,能夠實時處理
    的頭像 發表于 04-08 15:29 ?327次閱讀

    智慧物流中心建設:分布式智慧終端技術的核心作用

    ,包括訂單信息、貨物信息、運輸信息等。訊維分布式終端技術通過其強大的分布式計算能力,能夠實時處理
    的頭像 發表于 04-07 15:29 ?352次閱讀

    如何實現PTP協議的精準同步時鐘?

    尊敬的技術大牛們,你們好! 現有一項目需要用到貴公司的STM32F4系列產品,由于業務場景對時鐘同步精度要求很高。所以需尋求你們的技術支撐,提供關于STM32F4系列的PTP
    發表于 03-26 07:57

    STM32 IEEE1588時間同步

    有誰在STM32上實現過IEEE1588精確時間同步的嗎?
    發表于 02-23 16:22

    分布式大屏控制系統的屏幕同步技術

    分布式大屏控制系統的屏幕同步技術是確保系統內多個顯示屏幕顯示相同內容的關鍵技術之一。以下是實現屏
    的頭像 發表于 01-29 14:40 ?879次閱讀

    分布式大屏控制系統的工作原理

    分布式大屏控制系統是一種基于分布式計算、云計算和大數據技術的控制系統,具有高效、穩定、靈活的特點。該系統
    的頭像 發表于 01-29 14:24 ?785次閱讀
    主站蜘蛛池模板: 久久亚洲精品成人综合| 免费观看一级一片| 真人一级一级特黄高清毛片| 久久香蕉精品视频| 在线免费看| 六月天色婷婷| 色偷偷偷| 亚洲人成人| 五月婷丁香| 亚洲高清免费| 四虎影视在线影院4hu| 综合色天天| 一级做a爱片久久毛片| 美女黄网站人色视频免费国产| 啪啪午夜| 亚洲欧洲一区二区三区在线观看| www.午夜色| 欧美性狂猛bbbbbbxxxx| 182.t v香蕉人人网站| 97狠狠操| 国产美女一级视频| 亚洲不卡视频在线| 在线种子搜索| 人人看人人看人做人人模| 日本视频网站在线www色| 免费在线观看你懂的| 欧美18videosex性欧美69| 日韩精品免费一区二区三区| 特黄特级高清免费视频毛片| 五月婷婷一区| 特黄毛片| 六月天色婷婷| 在线视频 亚洲| 操操操插插插| 国内一区二区三区精品视频| 色综合久久综合| 韩国三级床戏合集| 国产成人精品日本| 国产精品久久久久久久久福利| 午夜毛片福利| 2017天天天天做夜夜夜做|