国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

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

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

掃碼添加小助手

加入工程師交流群

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

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

圖片

遠程調用數據流:

圖片

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

動作 傳感器映射

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

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組包時會把這些模塊編號放在頭部.

業務代碼:

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

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

RPC層

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

圖片

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

    關注

    0

    文章

    114

    瀏覽量

    12260
  • 函數
    +關注

    關注

    3

    文章

    4417

    瀏覽量

    67499
  • 通訊協議
    +關注

    關注

    10

    文章

    298

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

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

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

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

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

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

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

    Linux rpc編程過程

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

    RPC的結構原理是什么?

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

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

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

    什么是RPC

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

    HTTP和RPC的區別與聯系

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

    OpenDaylightRPC &amp; Notification是什么

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

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

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

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

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

    RPC接口和HTTP接口的區別與聯系

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

    什么是遠程過程調用

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

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

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

    RPC的基本原理和主要特點

    RPC(Remote Procedure Call,遠程過程調用)機制是一種常用的通信機制。實際上就是要像調用本地的函數一樣去調遠程函數。
    的頭像 發表于 11-05 09:12 ?5373次閱讀
    <b class='flag-5'>RPC</b>的基本原理和主要特點