日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

3天內不再提示

RPC如何在遠程過程中調用?

汽車電子技術 ? 來源: 工控碼農 ? 作者:工控碼農 ? 2023-02-07 09:52 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

RPC(Remote Procedure Call Protocol)即遠程過程調用,也就是調用的函數是在其它的控制板上運行的,不需要理會底層的通訊協(xié)議?,F(xiàn)在大型設備通常有超過5塊控制板,這些控制板通過485/CAN/以太網組成一個局域網。通訊協(xié)議可以使用Modbus或者自定義。。。

多模塊組網,實現(xiàn)模塊化,減少電氣布線便于維護:

圖片

遠程調用數據流:

圖片

這些控制板的硬件基本都一樣(電機,傳感器。。),底層驅動程序也一樣,只是上層的業(yè)務邏輯的差別,在驅動層封裝一層rpc,能進一步簡化業(yè)務邏輯開發(fā),使得控制從機的電機 動作和本機的函數接口一樣.

動作 傳感器映射

映射是把本地動作編號 傳感器編號映射到從機模塊的動作編號和傳感器編號,這個是在上電初始化時完成.

enum
{
  HOST=0,//本機編號
  SLAVE1,
  SLAVE2,
};


l->MapRemoteAction(201,SLAVE1,1);  //動作201映射到從機1的1號動作
l->MapRemoteAction(301,SLAVE2,1);  //動作301映射到從機2的1號動作


l->MapRemoteSensor(X201,SLAVE1,X01);//把傳感器X201映射到從機的X01

SLAVE1,SLAVE2是從機模塊編號,通常是電路板上的撥碼開關決定的.RPC組包時會把這些模塊編號放在頭部.

業(yè)務代碼:

start(App):
l->WaitAction(201,STEP2,STEP_ERROR);  //執(zhí)行從機1動作201,動作正確完成就跳到step2,錯誤step_error
step2:
if(l->IsSenorOn(X201))  //從機1號傳感器感應
{
  l->WaitAction(301,STEP_OK,STEP_ERROR);  //執(zhí)行從機2的動作
}
else
{
  l->SetActionOk();
}
step_ok:
l->SetActionOk();
step_error:
l->SetSubError();
end

上面的業(yè)務代碼是沒有任何通訊相關的流程,只是一些簡單的函數調用和本地函數調用一模樣

RPC層

RPC層主要完成數據組包,實時數據通訊,從機的動作 電機運動都是耗時過程,需要一定的時間才能完成,那么主機端的rpc層就需要不斷查詢從機的狀態(tài).App調用從機的動作時就同步等待從機的狀態(tài)變化后繼續(xù)向下執(zhí)行.軟件實現(xiàn)上需要單獨一個線程或者類似于switch-case實時處理rpc的工作流程.

圖片

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

    關注

    0

    文章

    114

    瀏覽量

    12298
  • 函數
    +關注

    關注

    3

    文章

    4422

    瀏覽量

    67870
  • 通訊協(xié)議

    關注

    10

    文章

    299

    瀏覽量

    21598
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    嵌入式遠程過程調用組件--eRPC

    概述 RPC(Remote Procedure call)遠程過程調用。其分為兩部分:遠程過程過程調用
    的頭像 發(fā)表于 04-06 14:15 ?3871次閱讀

    TSMaster RPC 基礎入門:編程指導和使用說明

    介紹RPC模塊前,我們先淺聊一下RPC的相關說明,以及在什么樣的情況下需要了解本文。1.RPC說明遠程過程調用RPC,RemoteProc
    的頭像 發(fā)表于 07-13 08:21 ?2352次閱讀
    TSMaster <b class='flag-5'>RPC</b> 基礎入門:編程指導和使用說明

    如何手搓一個自定義的RPC 遠程過程調用框架

    1、RPC遠程過程調用概述) 遠程過程調用RPC, Remote Procedure Call)是一種通過網絡從遠程計算機程序上請求服務
    的頭像 發(fā)表于 07-22 12:17 ?1777次閱讀
    如何手搓一個自定義的<b class='flag-5'>RPC</b> <b class='flag-5'>遠程過程調用</b>框架

    Linux rpc編程過程

    通過rpcgen的man手冊看到此工具的作用是把RPC源程序編譯成C語言源程序,從而輕松實現(xiàn)遠程過程調用。
    發(fā)表于 07-24 07:25

    RPC的結構原理是什么?

    遠程過程調用RPC)是一個協(xié)議,程序可以使用這個協(xié)議請求網絡另一臺計算機上某程序的服務而不需知道網絡細節(jié)。(過程調用有時也稱作函數
    發(fā)表于 10-12 10:43

    【學習打卡】OpenHarmony的RPC連接介紹

    。遠程過程調用 (RPC)是一種用于構建基于客戶端-服務器的分布式應用程序的強大技術。它基于對傳統(tǒng)本地過程調用的擴展,因此被調用過程不必與
    發(fā)表于 07-28 18:13

    什么是RPC

    什么是RPC   英文原義:Remote Procedure Call Protocol 中文釋義:(RFC-1831)遠過程調用協(xié)議 注  解:一種通過
    發(fā)表于 02-23 11:48 ?1166次閱讀

    HTTP和RPC的區(qū)別與聯(lián)系

    HTTP和RPC的相同點:底層通訊都是基于socket,都可以實現(xiàn)遠程調用,都可以實現(xiàn)服務調用服務。
    的頭像 發(fā)表于 11-23 08:55 ?2914次閱讀
    HTTP和<b class='flag-5'>RPC</b>的區(qū)別與聯(lián)系

    OpenDaylightRPC &amp; Notification是什么

    我們將介紹RPC和Notification,并從進程內外的通信開始,著重介紹遠程過程調用和發(fā)布-訂閱機制,然后分析MD-SAL的通信交互過程。
    的頭像 發(fā)表于 02-14 15:15 ?2038次閱讀
    OpenDaylight<b class='flag-5'>中</b>的<b class='flag-5'>RPC</b> &amp; Notification是什么

    RPC接口與HTTP接口哪一個更好?

    HTTP接口和RPC接口都是生產上常用的接口,顧名思義,HTTP接口使用基于HTTP協(xié)議的URL傳參調用,而RPC接口則基于遠程過程調用
    發(fā)表于 06-13 09:18 ?2002次閱讀
    <b class='flag-5'>RPC</b>接口與HTTP接口哪一個更好?

    基于Client/Server架構的HTTP接口和RPC接口

    HTTP接口和RPC接口都是生產上常用的接口,顧名思義,HTTP接口使用基于HTTP協(xié)議的URL傳參調用,而RPC接口則基于遠程過程調用。
    發(fā)表于 06-13 09:18 ?1317次閱讀
    基于Client/Server架構的HTTP接口和<b class='flag-5'>RPC</b>接口

    RPC接口和HTTP接口的區(qū)別與聯(lián)系

    基于遠程過程調用。 RPC(即Remote Procedure Call,遠程過程調用)和HTTP(HyperText Transfer Protocol,超文本傳輸協(xié)議),兩者前者是一種方法,后者則是一種
    的頭像 發(fā)表于 06-17 14:54 ?2921次閱讀
    <b class='flag-5'>RPC</b>接口和HTTP接口的區(qū)別與聯(lián)系

    什么是遠程過程調用

    開發(fā)環(huán)境:Ubuntu VS Code 編譯器:g++ 編程語言:C++ 框架源碼下載:GitHub 認識RPC RPC的全稱是遠程過程調用(Remote Procedure Call
    的頭像 發(fā)表于 11-10 10:10 ?2171次閱讀
    什么是<b class='flag-5'>遠程過程調用</b>

    Dubbo源碼淺析(一)—RPC框架與Dubbo

    一、什么是RPC 1.1 RPC概念 RPC,Remote Procedure Call 即遠程過程調用,與之相對的是本地服務調用,即LPC
    的頭像 發(fā)表于 08-16 15:18 ?1660次閱讀
    Dubbo源碼淺析(一)—<b class='flag-5'>RPC</b>框架與Dubbo

    RPC的基本原理和主要特點

    RPC(Remote Procedure Call,遠程過程調用)機制是一種常用的通信機制。實際上就是要像調用本地的函數一樣去調遠程函數。
    的頭像 發(fā)表于 11-05 09:12 ?5569次閱讀
    <b class='flag-5'>RPC</b>的基本原理和主要特點
    永泰县| 仙游县| 汉源县| 大新县| 如皋市| 鲁山县| 崇仁县| 永昌县| 招远市| 秦皇岛市| 河东区| 吉木乃县| 临清市| 韩城市| 远安县| 淮北市| 巴青县| 西安市| 祁门县| 尼玛县| 鹤庆县| 株洲市| 油尖旺区| 丽水市| 即墨市| 扎赉特旗| 曲阜市| 治县。| 商都县| 留坝县| 洞口县| 广平县| 冷水江市| 东平县| 准格尔旗| 江达县| 盐源县| 叙永县| 岑巩县| 泽普县| 炎陵县|