Klepsydra - suaicheantas

Neach-tiomnaidh Bufair Cearcall Ioma Klepsydra ROS2

Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-product-image

Fiosrachadh toraidh

Sònrachaidhean

  • Cuideam aotrom, modular, agus co-chòrdail ris a ’mhòr-chuid de shiostaman obrachaidh a thathas a’ cleachdadh
  • Plugin ROS2 Executor comasach air suas ri 10 tursan a bharrachd dàta a ghiullachd le suas ri lùghdachadh 50% ann an caitheamh CPU
  • GPU (Aonad Giullachd Grafaigeachd) airson co-shìnteadh àrd agus ìre dàta giollachd nas àirde agus cleachdadh GPU
  • Clepsydra AI
  • Klepsydra SDK
  • Klepsydra GPU
  • Comas sruthadh
  • Plugin gnìomhaiche Klepsydra ROS2 air feadh an t-saoghail

Stiùireadh airson cleachdadh bathar

  1. Co-theacsa: Giullachd Co-shìnte
    Tha an toradh air a dhealbhadh gus dèiligeadh ri dùbhlain co-cheangailte ri giullachd air bòrd ann an tagraidhean fànais, far a bheil cleachdadh CPU, meud dàta, agus riatanasan cumhachd nan adhbhar dragh. Tha e a’ tabhann fuasgladh airson bathar-cruaidh ùr agus seann bhathar-bog le bhith a’ làimhseachadh meudan dàta meadhanach gu h-èifeachdach.
  2. Dèan coimeas agus iomlaid
    Tha “Dèan coimeas agus iomlaid” na algairim a thathas a ’cleachdadh ann an ioma-snàithlean gus sioncronadh a choileanadh. Bidh e a’ dèanamh coimeas eadar susbaint àite cuimhne le luach ainmichte agus, dìreach ma tha iad mar an ceudna, atharraichidh e susbaint an àite cuimhne sin gu luach ainmichte ùr. Tha an obrachadh seo air a dhèanamh mar aon obrachadh atamach. Bidh an toradh a’ cur an algairim seo an gnìomh mar phàirt den ghnìomhachd aige.

Nithean matha is dona Prògramadh gun ghlas
Bidh an toradh a’ cleachdadh dòighean prògramadh gun ghlas, aig a bheil advantages agus disadvantages

  • Nithean matha:
    • Lùghdachadh air cleachdadh CPU
    • Làimhseachadh èifeachdach air meud dàta
  • Ana-cothrom:
    • Iom-fhillteachd ann an cur an gnìomh
    • Feum air taic bho bhathar-cruaidh bunaiteach (tha a’ mhòr-chuid de bhathar-cruaidh ùr a’ toirt taic do phrògramadh gun ghlas)

Neach-tiomnaidh ROS2
Tha an toradh a’ toirt a-steach Gnìomhaiche ROS2 a bhios a’ clàradh an aplacaid ROS2 le bhith a’ riaghladh fios air ais fo-sgrìobhaidhean, teachdaireachdan, seirbheisean, timers, agus nodan. Bidh e ag ithe teachdaireachdan bho na ciudhaichean meadhan-bathair DDS agus gan cur gu aon de na snàithleanan airson an cur gu bàs. Faodar an neach-tiomnaidh a rèiteachadh gus fios air ais a chuir an gnìomh ann an òrdugh no ann an co-shìnte.

Luchd-tiomnaidh ROS2 as ùire
Tha an toradh a’ toirt a-steach Luchd-tiomnaidh ROS2 ùr-nodha a bheir seachad diofar ro-innleachdan cur gu bàs

  • Neach-tiomnaidh Snàthainn Singilte: A’ cur an gnìomh fios air ais ann an sreath agus a’ sganadh structar an tagraidh bho àm gu àm gus nodan, ballrachdan, seirbheisean, msaa ùrachadh.
  • Neach-tiomnaidh ioma-snàthainn: A’ cur an gnìomh fios air ais aig an aon àm agus a’ sganadh structar an tagraidh bho àm gu àm gus an tuairisgeul air an duilgheadas ùrachadh.

Neach-tiomnaidh Streaming
Tha an toradh a’ toirt a-steach neach-tiomnaidh sruthadh a tha eadar-dhealaichte bhon neach-tiomnaidh snàthaichte ann an grunn thaobhan

  • Chan eil e ag ath-chruthachadh an liosta so-ghnìomhaichte airson a h-uile tionndadh.
  • Bidh a h-uile nod, buidheann gairm air ais, timers, ballrachdan, msaa air an cruthachadh aig àm togail.
  • Tha a h-uile ballrachd taobh a-staigh nód air a chuir gu bàs air an aon snàithlean, ge bith dè an àireamh de choraichean a thathas a’ cleachdadh airson an suidheachadh sruthadh.
  1. Neach-tiomnaidh Sruth Klepsydra
    Tha neach-tiomnaidh sruthadh an toraidh air a dhealbhadh gu sònraichte gus cuspairean sruthadh a làimhseachadh a’ cleachdadh paidhrichean foillsichear-fo-sgrìobhaiche. Bidh e gu h-èifeachdach a’ lìbhrigeadh teachdaireachdan gu luchd-aontachaidh anns a h-uile nod, a gheibhear bhon bhathar-meadhanach tron ​​​​rmw. Bidh lùb an tachartais a’ riaghladh nan cuspairean sin, a’ dèanamh cinnteach à sruthadh dàta rèidh.
  2. Rìoghachd Clepsydra
    Tha an Klepsydra Realm na phàirt den neach-tiomnaidh sruthadh a bhios ag obair mar chlàr-ama. Bidh e a’ co-òrdanachadh coileanadh riochdairean agus luchd-cleachdaidh taobh a-staigh an t-suidheachaidh sruthadh.
  3. Riochdaire
    Tha uallach air riochdaire airson dàta a ghineadh a thèid a chaitheamh leis an luchd-aontachaidh. Bidh an toradh a’ toirt taic do ghrunn riochdairean anns an t-suidheachadh sruthadh.
  4. Luchd-cleachdaidh
    Tha uallach air neach-cleachdaidh airson a bhith a’ giullachd agus a’ cleachdadh an dàta a chruthaicheas na riochdairean. Bidh an toradh a’ toirt taic do dh’iomadh neach-cleachdaidh anns an t-suidheachadh sruthadh.

Ceistean Cumanta (FAQ)

  1. Dè na siostaman obrachaidh a tha co-chosmhail ris an toradh?
    Tha an toradh co-chòrdail ris na siostaman obrachaidh as cumanta.
  2. Dè an ìre de dhàta as urrainn don phròiseas toraidh an coimeas ri dòighean traidiseanta?
    Tha an toradh comasach air suas ri 10 tursan barrachd dàta a ghiullachd le suas ri lùghdachadh 50% ann an caitheamh CPU an coimeas ri dòighean traidiseanta.
  3. A bheil an toradh a’ cleachdadh co-shìnteadh GPU?
    Tha, tha an toradh a’ cleachdadh GPU (Aonad Giullachd Grafaigeachd) airson co-shìnteadh àrd, a tha ag àrdachadh ìre dàta giollachd agus cleachdadh GPU.

Dòigh-obrach far-loidhne as fheàrr airson tagraidhean ioma-cridhe ROS2: An Neach-tiomnaidh ROS2 Ioma-cridhe Ring-Buffer

ROS Meetup Stuttgart 2023

Dr Pablo Ghiglino ( pablo.ghiglino@klepsydra.com )

An Neach-tiomnaidh Sruth ROS2

CO-THEACSA: PROCESSING CO-shìnte

  • Dùbhlain air giullachd air bòrdKlepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (1)
  • Bathar-cruaidh ùr agus seann bhathar-bog:
    • Coimpiutaran a-mach aig a’ char as àirde le meudan dàta ìosal gu meadhanach
    • Cleachdadh neo-èifeachdach air goireasan
    • Cus cumhachd airson giollachd dàta ìosal

Builean airson tagraidhean Space

  • Fàilligidhean misean ath-chuairteach mar thoradh air bathar-bog
  • Tha cothrom air dàta mothachaidh bhon Talamh a’ toirt ùine.
  • Bidh saidealan a’ strì gus coinneachadh ri riatanasan cumhachdKlepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (2)

COimeas agus suaip

  • ‘S e stiùireadh a th’ ann an Compare-and-swap (CAS) a thathar a’ cleachdadh ann an ioma-snàithlean gus sioncronadh a choileanadh. Bidh e a’ dèanamh coimeas eadar susbaint àite cuimhne le luach ainmichte agus, dìreach ma tha iad mar an ceudna, atharraichidh e susbaint an àite cuimhne sin gu luach ainmichte ùr. Tha seo air a dhèanamh mar aon obrachadh atamach.
  • Tha Compare-and-Swap air a bhith na phàirt riatanach de ailtireachd IBM 370 bho 1970.
  • Dhearbh Maurice Herlihy (1991) gun urrainn dha CAS barrachd de na h-algorithms sin a chuir an gnìomh na bhith a’ leughadh, a’ sgrìobhadh, agus a’ faighinn is a’ cur ris.Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (3)

PROS AND CONS OF PROGRAMMING AN-ASGAIDHKlepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (4)

Nithean matha

  • Tha feum air nas lugha de chaitheamh CPU
  • latency nas ìsle agus gluasad dàta nas àirde
  • Meudachadh mòr ann an cinnt

Cons

  • Teicneòlas prògramadh air leth duilich
  • Feumaidh pròiseasar le stiùireadh CAS (tha iad aig 90% den mhargaidh, ge-tà)

Cearcall-bufair Klepsydra

Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (5)

AN PRODUCT
Cuideam aotrom, modular agus co-chòrdail ris a’ mhòr-chuid de shiostaman obrachaidh a thathas a’ cleachdadh

  • SDK - pasgan leasachaidh bathar-bog
    Cuir ri giullachd dàta aig an oir airson tagraidhean coitcheann agus algorithms dian pròiseasar
  • AI - Artificial Intelligence
    Einnsean lìonra neural domhainn àrd-choileanadh (DNN) gus modal AI no ionnsachadh inneal sam bith a chleachdadh aig an oir
  • Plugin ROS2 Executor
    Neach-tiomnaidh airson ROS2 comasach air suas ri 10 tursan a bharrachd dàta a phròiseasadh le suas ri lùghdachadh 50% ann an caitheamh CPU.
  • GPU (Aonad Giullachd Grafaigeachd)
    Co-shìnteadh àrd de GPU gus ìre dàta giollachd agus cleachdadh GPU àrdachadhKlepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (6)

Co-theacsa: ROS1 san fhànais

  • Buannachdan:
  • A’ comasachadh fèin-riaghladh, tuigse, agus smachd san fhànaisKlepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (1)
  • Sùbailte, modular, agus le taic bho choimhearsnachd mhòr.Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (2)
  • Examples:
    • Robonaut aig NASA 2 (R2) - Astronauts le taic air an ISS
    • Astrobee aig NASA - Obraichean fèin-riaghailteach air an ISS
    • SPIORAID - Saidealan spherical airson rannsachadh air an ISS
    • Dextre - Gàirdean robotach airson làimhseachadh agus càradh air an ISS
    • Google Lunar XPRIZE - Air a chleachdadh airson miseanan gealaich roverKlepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (3)

Co-theacsa: Space-ROS

  • Frèam ROS ann an sgrùdadh fànais agus robotics
    Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (4)
  • Gu ìre le teisteanas airson cleachdadh Space
  •  Examples:
    Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (5)
    • Luchd-cuideachaidh robotach airson speuradairean
    • Rannsachadh planetary le rovers fèin-riaghailteach
    • Obrachaidhean agus smachd saideal
      Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (6)
    • Soitheach-fànais fèin-riaghailteach a’ docaigeadh
    • Càradh agus seirbheiseachadh air-orbit
      Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (7)
  • Buannachdan:
    • A’ comasachadh fèin-riaghladh, conaltradh, agus tuigse
    • A’ luathachadh leasachadh misean fànais agus gnìomhachd.Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (8)

Neach-tiomnaidh ROS2 air a mhìneachadh

Bidh neach-tiomnaidh a’ co-òrdanachadh agus a’ clàradh an aplacaid ROS2 le bhith a’ stiùireadh fios air ais fo-sgrìobhaidhean, teachdaireachdan, seirbheisean, timers agus nodan. Ann an ROS2, cha bhith an neach-tiomnaidh a’ cumail a ciudha fhèin de theachdaireachdan is fios air ais, ach an àite sin bidh e ag ithe teachdaireachdan bho na ciudhaichean DDS meadhan-bathair bunaiteach, agus an uairsin ga chuir air falbh airson a chuir gu aon de na snàithleanan.Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (9)

Stàit-na-h-ealain

Luchd-tiomnaidh ROS2

  • Neach-tiomnaidh le snàthainn singilte: Bidh aon snàithlean a’ ceasnachadh am bathar meadhanach agus a’ cur an gnìomh na fios air ais ann an òrdugh. Bidh e an uairsin a’ sganadh an structair agus ag ùrachadh nodan, fo-sgrìobhaidhean, seirbheisean, msaa.
  • An neach-tiomnaidh aon-snàithichte Statach, far nach tèid sganadh agus mìneachadh an structair a chur gu bàs ach aon turas, rè togail. Thèid a h-uile nod, buidheann gairm air ais, timers, ballrachdan msaa a chruthachadh mus tèid an snìomh () a ghairm.
  • Bidh an neach-tiomnaidh ioma-snàthainn a’ cruthachadh grunn snàithleanan a chuireas an gnìomh fios air ais aig an aon àm. Coltach ris an aon neach-tiomnaidh snàthaichte, bidh e bho àm gu àm a’ sgrùdadh structar an tagraidh agus ag ùrachadh an tuairisgeul air an duilgheadas.

An neach-tiomnaidh sruthadh Overview

  • Bidh an Gnìomhaiche Sruth a’ cleachdadh an Klepsydra Event Loop gus teachdaireachdan a lìbhrigeadh don luchd-aontachaidh anns a h-uile nod, a tha a’ tighinn bhon bhathar-meadhain tron ​​rmw. Bidh lùb an tachartais a’ riaghladh nan cuspairean sin a’ cleachdadh paidhrichean foillsichear-fo-sgrìobhaiche.
  • Bidh an neach-tiomnaidh sruthadh ga ghiùlan fhèin san aon dòigh ris an neach-tiomnaidh aon-snàithichte statach ann an grunn thaobhan. An toiseach, chan eil e ag ath-chruthachadh an liosta so-ghnìomhaichte airson a h-uile tionndadh. Bidh a h-uile nod, buidheann gairm air ais, timers, ballrachdan msaa air an cruthachadh aig àm togail. San dàrna h-àite, thèid a h-uile ballrachd taobh a-staigh nód a chuir gu bàs air an aon snàithlean, ge bith dè an àireamh de choraichean a thathas a’ cleachdadh airson an t-suidheachadh sruthadh.

Neach-tiomnaidh Sruth Klepsydra

Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (7)

An neach-tiomnaidh sruthadh

Ciamar a tha e ag obair?

  • Bithear a’ cruthachadh paidhir foillsichear-fo-sgrìobhaiche airson gach cuspair a tha riatanach le nód ROS2 sònraichte.
  • Taobh a-staigh, tha gach paidhir foillsichear-fo-sgrìobhaiche air a chomharrachadh le dà pharamadair: ainm an nód agus ainm a’ chuspair. Ann am faclan eile, thèid dà nod eadar-dhealaichte a tha a’ foillseachadh air an aon chuspair a riaghladh gu neo-eisimeileach.
  • Tha a h-uile paidhir foillsichear-fo-sgrìobhaiche co-cheangailte ri cuspairean a bhuineas don aon nód air an riaghladh leis an aon lùb tachartais.Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (10)

An neach-tiomnaidh sruthadh Single-core vs multi-coreKlepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (8)

  • An advantagIs e e den neach-tiomnaidh sruthadh nach eil feum air riaghladh ioma-snàthainn an luchd-aontachaidh leis gu bheil iad uile air an riaghladh le snàithlean an lùb tachartais co-cheangailte, a tha cumanta an dà chuid aon-cridhe agus ioma-cridhe.
  • Bidh a’ chiad fhear ag obair san aon dòigh ris an neach-tiomnaidh aon-snàthainn statach, leis gu bheil a h-uile neach-clàraidh anns a h-uile nod air a ghairm leis an aon snàithlean

Slat-tomhais Coileanaidh: An Siostam Ref

Comharra-coileanaidh

  • Suidhich slatan-tomhais sruthadh Klepsydra:
    • Bha an slat-tomhais stèidhichte air siostam fiosrachaidh Autoware. Bidh e ag atharrais air tagradh dràibhidh reusanta.
    • Chaidh a h-uile tomhas a ghabhail a’ cleachdadh Raspberry Pi 4B le: ROS galactic, Ubuntu 20.04 agus 4 GB de reithe, tricead seasmhach de 1.50GHz
    • Suidheachadh co-fhreagarrach den t-siostam fiosrachaidh, agus às aonais aonaranachd CPU
  • Pròiseasaran air an deuchainn:
    • Raspberry PI 4 (pròiseasar iomraidh airson an RTWG)
    • Unibap's iX10 (NASA agus Blue Origin Testbed)
    • Teledyne e2v LS1046

Comharra-coileanaidh

Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (9)

Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (10)

Klepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (12)

  • Is e an targaid airson an algairim ginteil a bhith a’ lughdachadh latency cuibheasach na slighe èiginneach.
  • Is e sin, an ùine a bheir e bho chaidh Lidar Data fhoillseachadh gus an cuir an Object Collision Estimator crìoch air an obair aige.
  • Tha an dealbh a’ sealltainn na slighe deatamach a dh’ fheuch an rannsachadh againn ri a mheudachadh

An neach-tiomnaidh sruthadh
Klepsydra Streaming Distribution Optimiser (SDO)

  • Bidh an eadar-dhealachadh ioma-cridhe den neach-tiomnaidh sruthadh ag obair as fheàrr nuair a tha cuairteachadh luchd nan nodan am measg choraichean air a mheudachadh agus faodaidh e eadar-dhealachadh mòr a dhèanamh a thaobh latency, caitheamh cumhachd agus gluasad dàta.
  • Ach, chan eil mapadh choraichean gu math beag agus tha feum air dòigh-obrach eagarach. Is e dòigh-obrach a dh’ fhaodadh a bhith ann a bhith a’ mìneachadh gnìomh targaid a bhios a’ tomhas dèanadas an t-siostam stèidhichte air a’ phrìomh rèiteachadh.
  • Faodar algorithm ginteil an uairsin a chleachdadh gus an rèiteachadh bunaiteach a bharrachadh le bhith a’ dèanamh deuchainn ath-aithriseach air diofar rèiteachaidhean agus a’ taghadh an fheadhainn a tha a’ coileanadh gu math a rèir an gnìomh targaid. Tha am pròiseas seo a 'leantainn gus an lorgar an rèiteachadh as fheàrr.
  • Tha an dòigh-obrach seo a’ ceadachadh cleachdadh nas èifeachdaiche den t-siostam ioma-cridhe agus a’ dèanamh cinnteach gu bheil an luchd air a chuairteachadh anns an dòigh as fheàrr.

Geàrr-chunntas Toraidhean

  • Airson obair nód beag, chan eil an iom-fhillteachd a bharrachd ag eadar-theangachadh gu toraidhean nas fheàrr. Tha an snàthainn shingilte statach, leis gu bheil e gu math sìmplidh, a’ coileanadh nas fheàrr na an còrr den luchd-tiomnaidh.
  • Àrdachadhasing the workload, the Streaming Executor is the best executor followed by the Static Single Threaded Executor.
  • Bhathar an dùil gun do rinn an Gnìomhaiche Sruth gu cunbhalach nas fheàrr na an aon snàthainn, leis nach atharraich an tagradh an topology aige fhad ‘s a bha e a’ ruith. Tha e air a dhearbhadh gu bheil seo fìor dha-rìribhKlepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (13)
  • Toraidhean airson: Raspberry PI4
  • Àrdachadh co-chosmhail ann an coileanadh air fhaighinn airson iX10 aig Unibap agus LS1046 aig TeledyneKlepsydra-ROS2-Multi-Core-Ring-Buffer-Executor-01 (14)

Co-dhùnaidhean

Geàrr-chunntas

  • Tha an artaigil seo a’ taisbeanadh dòigh-obrach ùr-nodha airson modal cur gu bàs ROS2 a bharrachadh a tha a’ cothlamadh an dà chuid buileachadh gnìomhaiche ROS2 stèidhichte air bufair fàinne gun ghlas, agus cleachdadh algoirmean ginteil gus an sgaoileadh as fheàrr den luchd tagraidh robotach a-steach do na coraichean a tha rim faighinn sa choimpiutair targaid.
  • Tha an cothlamadh seo air a dhearbhadh gun obraich e gu fìor èifeachdach airson siostam le luchdan coimpiutaireachd trom, mar an siostam fiosrachaidh a chaidh a mhìneachadh gu h-àrd. Is e prìomh bhuannachd an rannsachaidh a tha air a thaisbeanadh a bhith freagarrach airson diofar thagraidhean: faodar diofar thopologies nód ROS2 a luathachadh le bhith a’ cleachdadh an neach-tiomnaidh sruthadh a bharrachd air optimization ginteil, a tha mar aon de na dùbhlain as motha a chaidh a dheasbad ann an ROS2.

Obair ri teachd

Geàrr-chunntas

  • A thaobh obair an rannsachaidh seo san àm ri teachd, tha grunn fheartan ri ghabhail a-steach don neach-tiomnaidh sruthadh:
    • taic do dh' irioslachd, agus do
    • sgaoileadh stòr fosgailte den neach-tiomnaidh sruthadh aon-cridhe agus
    • cleachdadh an sensor multiplexer a bharrachd air an lùb tachartais airson cuspairean le grunn luchd-aontachaidh.
    • Deuchainn ailtireachd RISC-V

Sgrìobhainnean/Goireasan

Neach-tiomnaidh Bufair Cearcall Ioma Klepsydra ROS2 [pdfStiùireadh Cleachdaiche
Neach-tiomnaidh Bufair Cearcall Ioma ROS2, ROS2, Gnìomhaiche Bufair Cearcall Ioma-chridhe, Neach-tiomnaidh Bufair Cearcall, Neach-tiomnaidh Bufair, Neach-tiomnaidh

Iomraidhean

Fàg beachd

Cha tèid do sheòladh puist-d fhoillseachadh. Tha raointean riatanach air an comharrachadh *