Towards Production Ready CI/CD of Cloud Robotics

日付: 12 Nov 2020
カテゴリー: ブログ, 技術情報(English)

What is CI/CD?

As per Red Hat, “CI/CD is a method to frequently deliver apps to customers by introducing automation into the stages of app development. The main concepts attributed to CI/CD are continuous integration, continuous delivery, and continuous deployment. CI/CD is a solution to the problems integrating new code can cause for the development and operations teams.”

Situation of CI/CD in robotics

Deploying your code in continuous fashion is hard in non-robotics applications as such, and with robotics comes the hard part of testing with different parameters, setting up simulation environments, and deploying this code on real robots. 

In this post, we will demonstrate how you can integrate rapyuta.io to help build, run simulations and deploy these applications on real robots reliably.

What is rapyuta.io?

rapyuta.io is a Platform-as-a-Service providing managed cloud services that solve technical and production challenges of building, provisioning, running, and iterating on distributed robotic applications.

Introduction to rapyuta.io Build

The rapyuta.io platform takes the responsibility of building and delivering the software across the cloud and device.

Under the hood, rapyuta.io solves the hard problems of native arm compiles, software versioning, artifact delivery, transactional upgrades and provisioning.

We convert your code into docker images, based on two types of recipes we provide:

  1. Catkin
    1. This recipe allows a user to build ROS based source code using catkin into a container image. We allow our users to add any valid catkin parameters in this recipe.
  2. Docker
    1. This recipe builds source code using Dockerfile into a container image. The Dockerfile is usually saved in your git repository.

We use builds in defining your application in terms of package, which you can deploy on cloud or device depending on runtime.

You can use triggers and rollbacks on build, to deploy latest code in real environment or rollback to previous software code if something goes wrong in new code.

Integrating rapyuta.io to achieve a step towards CI/CD

Let’s first define our git branching model. The source code repository should hold two main branches with  infinite lifetime

  1. Master
    1. The source code at HEAD should always contain production/production ready code. 
  2. Develop
    1. The source code at HEAD should contain code for the features of the next release. Every time changes are merged back into origin/master, this is a new production release by definition

Each feature should be made from develop, a separate branch and merged to develop.

Once we have our branching model ready, let’s define a similar setup on rapyuta.io

Let’s create two projects

  1. Ros-prod
  2. Ros-devel

In each project, we can make build resource on rapyuta.io platform

Here, you can mention about details of your repository, like URL of the repository, build recipe, architecture, catkin parameters, branch name etc Once we have all this information, we will build this repository into a docker image which can be later used at the time of deployment in real robot or in simulation.

We encourage people to keep their ROS code separate from parameters, which allows them to be changed without changing the code/build. You can use configuration parameters on rapyuta.io to achieve this.

We also encourage you to keep launch files of simulation and rest of your application separately and not tightly coupled, please go through our documentation for more information on this.

We can choose any of the existing tools like Travis CI or Jenkins to define our pipeline, where we run unit tests first, and then choose rapyuta.io SDK to trigger a new build and deploy either simulation application or production application depending on if a new commit is logged in develop or prod.

Both projects should have similar package builds, which we will use to integrate in our pipeline.

Whenever a new commit is pushed

  1. Develop
    1. Run unit tests in pipeline
    2. Will operate on Ros-devel project in rapyuta.io
      1. Use SDK to trigger a new build
      2. This project will have configuration to deploy in simulation
      3. Deploy
      4. Your QA team should do basic testing in gazebo, and verify if all tests passed using logs
      5. Once the basic testing is done, you can merge this code to master.
  2. Master
    1. Run unit tests in pipeline
    2. Will operate on Ros-master project in rapyuta.io
      1. Use SDK to trigger a new build
      2. This project will have configuration to deploy your code in real world
      3. Deploy on real devices

<Sample code using sdk to build, and deploy>

from rapyuta_io import Client
client = Client(auth_token='auth_token', project='project_guid_of_ros_devel')
build = client.get_build('build_guid_of_ros_devel')
build.trigger()
build.poll_build_till_ready()
package = client.get_package('test_package_id')
package_provision_config = package.get_provision_configuration('test_plan_id')
package.provision(deployment_name, package_provision_config)

This short post gives you an introduction on how we can use rapyuta.io in building, deploying code in simulation and in real robots by integrating in your existing or new CI pipelines. 

We are working on features which will help you collect ROSbags in simulation deployment, which you can later replay locally to reproduce bugs/scenarios. In future, we will share more information for continuous delivery to these real robots.

Write to us at support@rapyuta-robotics for any queries, feedback or suggestions.

最近の記事

ブログ
/ 10 Apr 2024
2024年問題以降の物流危機
第3回:物流「自動化」のカギを握る各業界の未来
働き方改革法によって2024年4月から施行される「自動車運転業務における時間外労働時間の上限規制」。これによって生まれるさまざまな課題が懸念されています。この物流・運送業界の「2024年問題」を乗り越えるためのヒントを、欧州を代表する経営戦略コンサルティングファームである株式会社ローランド・ベルガー の小野塚 征志さんに伺いました。「物流クライシスによっておこるこれからの日本」と「物流自動化への投資基準」という観点でお伺いしたインタビューを、3回にわたってご紹介していきます。前回までは、2024年問題の先に日本の経済衰退が引き起こされる可能性や、これを踏まえた課題解決として、物流の自動化にあたって、設備導入の投資に関するノウハウをお話いただきました。最終回となる3回目は、物流の自動化をより広めるためにカギを握る、不動産デベロッパーやマテハンメーカーの動向、そしてWMSなどのシステム連携についての未来像をお聞きします。 ■小野塚さんプロフィール profile小野塚 征志株式会社ローランド・ベルガー パートナー 慶應義塾大学大学院政策・メディア研究科修了後、日系シンクタンク、システムインテグレーターを経て現職。サプライチェーン/ロジスティクス分野を中心に、長期ビジョン、経営計画、新規事業開発、M&A戦略、事業再構築、構造改革、リスクマネジメントをはじめとする多様なコンサルティングサービスを展開。内閣府「SIP スマート物流サービス 評価委員会」委員長、経済産業省「持続可能な物流の実現に向けた検討会」委員、経済産業省「フィジカルインターネット実現会議」委員、国土交通省「2020年代の総合物流施策大綱に関する検討会」構成員、経済同友会「先進技術による経営革新委員会 物流・生産分科会」ワーキンググループ委員などを歴任。近著に、『ロジスティクス4.0 −物流の創造的革新』(日本経済新聞出版社)、『サプライウェブ −次世代の商流・物流プラットフォーム』(日経BP)、『DXビジネスモデル −80事例に学ぶ利益を生み出す攻めの戦略』(インプレス)など。 不動産デベロッパーが「物流企業化」する未来がより現実的に Q.物流企業に賃貸ビジネスを展開している不動産デベロッパーが今後どのように変化するかについても教えてください。 小野塚 物流デベロッパーは利便性の良い場所に物流施設を作って企業に使ってもらい、賃料を得るビジネスを展開しています。昨今では、1つの大型物流施設を複数のテナントが共用する「マルチテナント型物流施設」がトレンドです。2000年に物流REIT(投資家からの資金で不動産を購入し、賃料や売却益を投資家に配当する仕組み)が解禁になってから、大手の不動産デベロッパーは右肩上がりで売上を伸ばしてきました。しかし、足元、関西圏では空室率が若干上昇傾向にあり、関東でも同様の動きが見えつつあります。物流施設が今後も増えていくと、空室率が高まる可能性があります。つまり、これまでと同じ成長が見込めなくなってくるので、不動産デベロッパーのビジネスは賃料収入だけでは厳しくなってくるのです。こうなると、物流施設での賃料+αの収入が欲しくなってくるのは自明です。 そこで不動産デベロッパーは物流施設を貸すだけでなく、その中で動く設備もレンタルすることで、収入源を拡大しようとすると思います。たとえば、借主となる企業向けに、AMRや自動フォークリフトなどをレンタルし、賃料+αの収益を得ようとすることが増えるのではないでしょうか。さらにそこで働く人も募集・斡旋して派遣すれば、従業員ひとり当たりの紹介料として、キックバックを得ることも可能です。こうした賃料+αのビジネスは実際に始まろうとしていて、たとえば施設にロボットを置いて、3か月使ってみてくださいといったトライアルサービスを提供している施設もあります。物流施設だけではなく、施設で必要なものをワンストップで手配できる代理店的なビジネスへの進化は、不動産デベロッパーが生き残るための未来像かもしれません。 10年、20年後には、物流センターの作業の95%くらいをロボットに任せられるようになることが予想されます。そうすると、さらに行き着く先としては、デベロッパー自身が「倉庫業」としてのサービスを提供するようになる、という世界がやってきてもおかしくないと思います。かつてはホテルを作っていた企業が、今はフロント業務を自動化したホテルを運営しているくらいですから、デベロッパーが倉庫業に転換したとしてもなんら不思議ではありません。 ロボット利用料の大胆な見直しが物流自動化を加速 Q.一方で自動化機器を供給していくマテハンメーカーが、ロジスティクス4.0をむかえるにあたり、意識しておくべきことはどのようなことでしょうか? 小野塚 これにはふたつのポイントがあります。ひとつは、ほかのシステムとどんどんつながれるようになっていこう、ということです。物流センターのすべての業務フローを1台でできるような多機能ロボットは、この世にはありません。現実には複数メーカーの複数種のロボットを使わないと業務が成立しないわけです。そこで、これら複数のロボットのシステムを連携させる必要があります。ロボットは例えていえばPCのアプリのようなもので、「うちのはWindows専用だから」とか「Mac専用だから」となっている複数のアプリを、ひとつの業務の中で組み合わせるのは使いづらいですよね。そういった意味で、物流ロボットは基幹システムがどんなOSであっても、改修などの手間もなく、より簡単につなぐことができる、という前提が重要になってきます。ゆくゆくはロボット側でOSをつくっていくということも理想的ですが、まずは現状のロボットが「ほかのOSとつなぎやすい設計」になっていることが、製品を選択するポイントになってきます。 もうひとつは料金体系の見直しです。今は1台あたりの月額でレンタルのような形になっているかと思いますが、生産量や出荷量が毎月一定であればこれはメリットがあるでしょう。しかし、ECをはじめとした物流では月によって出荷量が変動する、いわゆる「波動」が生じます。そのため倉庫側からしたら、10台で1日1000個の出荷がある月と、10台で1日100個しかない月とで、レンタル費用のロスが生じてしまうことになります。 そこでユーザーのことを考えた理想像としては、費用を作業量で計算した料金体系だと思っています。すなわち、ロボットの必要台数は波動に応じてメーカーがコントロール、その代わり「アルバイトの人件費」は1出荷あたり150円だけど、修理費などもろもろ込みで「ロボットの利用料」は1出荷あたり100円ですよ…という形です。これは使う側からしてみたら、コストが固定費扱いから、完全に「変動費化」するんですね。要するに、波動によって稼働率が下がって費用対効果が下がるリスクを未然に排除できるわけです。無論、マテハンメーカーにとっては大変な選択ですが、物流企業からしたらかなり画期的だと思います。 そして、この作業量あたりの費用形態を実現するためには、ラピュタロボティクスが実現しているように、実務経験から得られた膨大なデータと分析できるプラットフォームが必要なんです。この環境であれば30台のロボットが必要で生産性がこのくらいになる、という「適切なロボットの量」は、過去のロボット稼働データの蓄積がなければ決して導き出せません。つまり、この「膨大なロボット稼働データ」があるところでしか適切な価格設定ができないのです。これは先行者有利のビジネスモデルです。仮に同じスペックの競合他社が出現しても、「適切なロボットの量」を提案できるデータは競合にはないので、同じプライシング戦略を打てません。費用形態を作業量ベースに変えるだけで、マテハンメーカーが競争力を高められるようになるのです。 Q.スムーズなシステム連携という面では、WMSなど物流企業の既存システムとのつながりがカギになると思います。こうした基幹システムの日本での動向を教えてください。 小野塚 日本の会社はシステムの細かな部分を「うちの会社はこうじゃなきゃいけない」とか「現場が管理しやすい」という大義のもとに、オリジナルのWMSをスクラッチで作ったり、パッケージソフトを原型がなくなるまで独自カスタマイズする…いわゆるガラパゴス化を志向する現場が多いです。また同じ系列会社のふたつの倉庫なのに別のWMSを使ったりするところなどもあり、日本でのシステム統合やシステム連携というのは、大変苦労する仕事です。 しかし、グローバルに目を向けると、そんなことをやっているのは日本くらいだとわかります。海外ではパッケージシステムを導入している会社がほとんどで、使われているシステムの種類もそう多くなく、欧米では上位5社ほどのシステムで全体の80%を占めることも珍しくありません。では、現場の意向を汲みあげローカライズしたシステムが多い日本が、今後はどうなっていくかといえば、長い目では日本も欧米に近づいてパッケージ化していくと考えます。たとえばビジネスツールでいっても、PCのOSはWindowsが多数を占めますし、勘定システムもいくつかのシステムで統一されてきたという歴史があります。物流管理システムでもその流れはほぼ間違いなく起こるでしょう。ただし、OSや勘定システムが統一された歴史は、アクションが起きてから20年とかのスパンで起こっていることでもあります。そういう意味では、かなり長い目で見て徐々に変化していくのかなと考えています。 ■おわりに残念ながら少子高齢化を背景としたさらなる人手不足は避けられません。物流の現場では、需要と供給のギャップがますます大きくなっていきます。経済の血脈である物流の流れが滞りはじめるわけです。そして重要なことは、今のままではそれが「遅かれ早かれ確実にやってくる未来」であるということです。物流センターでの課題解決は、より少ない人数で、より多くの物流量をスムーズに運用できる「自動化」の推進がもっとも有効です。他社に先んじてAMRなどの自動化設備を導入し、コスト競争力を高めることができれば、事業としての収益性や持続性も向上します。人件費の上昇分を商品価格に転嫁する動きが広がりつつある今は、自動化への舵を切る絶好機といっても過言ではないのです。 【この連載の記事】・2024年問題以降の物流危機 第1回:2024年問題以降に待ち受ける具体的な物流課題とは?・2024年問題以降の物流危機 第2回:物流危機をチャンスに変える「自動化」投資と基準…
...
read me
ブログ
/ 04 Apr 2024
2024年問題以降の物流危機
第2回:物流危機をチャンスに変える「自動化」投資と基準
働き方改革法によって2024年4月から施行される「自動車運転業務における時間外労働時間の上限規制」。これによって生まれるさまざまな課題が懸念されています。この物流・運送業界の「2024年問題」を乗り越えるためのヒントを、欧州を代表する経営戦略コンサルティングファームである株式会社ローランド・ベルガー の小野塚 征志さんに伺いました。「物流クライシスによっておこるこれからの日本」と「物流自動化への投資基準」という観点でお伺いしたインタビューを、3回にわたってご紹介していきます。前回は、2024年問題が物流業界に引き起こす「深刻な人材不足」が日本の経済危機を招きかねないというお話でした。2回目となる今回は、これを踏まえて、2024年問題を乗り越えるための「物流の自動化」に投資するタイミングや、その判断基準について伺いました。 ■小野塚さんプロフィール profile小野塚 征志株式会社ローランド・ベルガー パートナー 慶應義塾大学大学院政策・メディア研究科修了後、日系シンクタンク、システムインテグレーターを経て現職。サプライチェーン/ロジスティクス分野を中心に、長期ビジョン、経営計画、新規事業開発、M&A戦略、事業再構築、構造改革、リスクマネジメントをはじめとする多様なコンサルティングサービスを展開。内閣府「SIP スマート物流サービス 評価委員会」委員長、経済産業省「持続可能な物流の実現に向けた検討会」委員、経済産業省「フィジカルインターネット実現会議」委員、国土交通省「2020年代の総合物流施策大綱に関する検討会」構成員、経済同友会「先進技術による経営革新委員会 物流・生産分科会」ワーキンググループ委員などを歴任。近著に、『ロジスティクス4.0 −物流の創造的革新』(日本経済新聞出版社)、『サプライウェブ −次世代の商流・物流プラットフォーム』(日経BP)、『DXビジネスモデル −80事例に学ぶ利益を生み出す攻めの戦略』(インプレス)など。 自動化への投資が生み出す「費用対効果+α」の価値 Q.小野塚さんの著書『ロジスティクス4.0:物流の創造的革新 』(日本経済新聞出版)でも予測されているように、人手不足に苦しむ物流業界は、ロジスティクス4.0(=装置産業化)へと進んでいくと思いますが、その前段階にある「ロジスティクス3.0」、すなわち「物流のシステム化」を進めることにも悩みを抱えている企業はまだ多いと考えられます。具体的に物流のシステム化や、自動機器を導入していく現場はどのように思考し、行動を起こせば良いのでしょうか? まずはコンサルタントとして見てきたご経験から、システム化・自動化の「投資判断基準」を教えてください。 小野塚 たとえば自動化への投資を行った結果、100人でやっていた仕事が50人になりました、とか、紙からデジタルで処理されるようになったことで事務作業者が30人から10人に減りました、となったときには、基本的にはまず人件費が削減されていきます。仮に、月当たりで20人分のコストが年間で1億円下がったとします。投資総額が10億円だとして、約10年で回収できそうだ…という考え方で意思決定をしていきます。5年がいいのか10年なのかは各社さまざまですが、ひとつの大前提として、投資に対して「一定期間で回収が見込めるものに関しては投資をすべきである」というのが基本のキとなる考え方です。物流センターの自動化については、これに加えてさらにふたつほど考えておくべきポイントがあります。 まずひとつは、自動化によって労働環境が改善されるような現場では「自動化の副次的効果」が発生するということです。重いものを運ぶつらい仕事はロボットで、人間は人間にしかできないクリエイティブな仕事ができる…となれば、無論、働く人のモチベーションも変わっていきます。その結果「この会社は労働環境が良い」というイメージが生まれ、採用率と定着率の向上につながっていきます。定着率が下がると新規採用を常に行わねばならないから、コストの面で見れば、人材会社への報酬や広告費などの「採用コスト」がかかっていくことになります。もし自動化して定着率が上がったことで採用コストが浮けば、ほかの有用な投資にまわすことができます。もうひとつは、「人件費は上がり続ける可能性がある」ということです。先ほどの例でいう1億円×10年で投資を回収するというのは、あくまで「今の人件費」で試算したものです。ここで考えなければいけないのは、今後は「確実に人手不足になる」ということです。こうなると指数関数的に人件費が上がっていって、集めようと思っても人が集まらなくなっている可能性もあります。将来的には年間1億円は2億円になっているかもしれません。現実的には、人件費がどこまで上がるかは誰にもわからないですし、定着率も完全に計算できるわけではありません。それでも極端な話で、設備投資分と人件費がアップすることを見込んだ回収分が、投資に対してプラマイゼロだとしても、「働く環境が大きく変わる」ことで得られる「副次的効果」の果実はほぼ確実に得られるわけで、回収想定期間を超えた分はプラスに転じる可能性が高いわけです。先ほどお話ししたように、労働環境が最新設備となり定着率が上がることで見込まれるのは、採用コストと雇用コストの削減、PR効果といったものです。昔ながらの人海戦術で働く環境と、最新のロボットとともに働く労働環境を比較すれば、働き手がどちらを選択したくなるかは明らかですよね。 このように、長い目で見ても実際面の価値がほぼ確実に出てくるので、設備投資費用と数年分の人件費がトントンの試算であっても、投資する方向で意思決定しましょうというのが、私の意見です。 大手企業と中小企業で異なる「自動化機器」と「投資基準」 Q.大手企業と中小企業とで投資判断基準が異なるかと思います。これらの違いを教えてください。 小野塚 大型倉庫を複数持つ物流企業では、扱う荷物の量が多いため、GTP(商品棚搬送型ロボット)や自動倉庫など、大型の設備投資をしてもより早く効果を出しやすくなり、生産性を担保しやすくなります。さらに仮に3台の大型設備を導入した場合、トラブルで1台が動かなくなったとしても、残り2台でバックアップができるので、センターを止めずに稼働できます。 このように大手企業の物流センターだと、投資できる資金額が大きいため生産性を高めやすく、何かあったときに対応しやすいという特徴があるので、大型設備の投資でも意思決定が比較的スムーズだと思います。 一方、中小の物流倉庫では大型の設備を複数台導入するのが費用対効果の面から難しいケースが多く、また1台のメイン設備がストップすればバックアップがないため、センター全体が停滞してしまうリスクが出てきます。そのため、中小の物流倉庫では、トラブル時にバックアップが効きやすく、投資金額が小さくても生産性をある程度高められる、AMRのような小回りの利く小型ロボットをトライアルで複数台入れてから、判断されるのが良いと思います。 自動化で起きる地盤変化!物流業の未来とは Q.3PLと荷主側での投資判断基準の違いを教えてください。 小野塚 日本では、3PLと荷主との契約期間は3年程度であることが多いです。また3年契約でも再契約になるケースがほとんどなので、長い目で見た設備投資も本来ならばできるはずです。しかし、ロボットの設備投資に対しての回収期間が「10年」となってしまうと、3PLとしてはどうしても二の足を踏んで導入しにくくなる実情があります。そのため、短い投資回収期間で、一定の効果を出しやすいAMRのようなロボットを、セレクティブに導入していくのがおすすめです。またサブスクのような料金形態で利用できるサービスだと、よりコストを抑えた投資・運用も可能になりますし、現在そのようなロボットビジネスが増加していて活用できます。 投資への意思決定という点で言えば、荷主(商品の所有者=3PLへの発注者)の方が意思決定をしやすいということになります。物流センターの設備は荷主の所有物であることが多く、投資の是非を主体的に判断できます。そのため、長い目で見ても荷主側は早めに投資をしてくださいということが言えると思います。しかも荷主としては、収益性を維持しようとすると、人件費の上昇分を売値に転嫁する必要があります。そのため設備投資をいち早く実行し、省人化できれば、その分だけコストの上昇を抑えられ、売値を維持でき、コスト競争力を相対的に高めることができます。 Q.これからの物流企業がどのようになっていくか、小野塚さんの未来予測を教えてください。 小野塚 これまでの倉庫業は、とにかく人が集められればビジネスになりました。現場で指示だしできるベテランスタッフさえ確保できれば、業務を遂行できたわけです。そして属人化したその仕事には再現性がないため、中小企業でも競争力を発揮できました。このような人海戦術でまわすやり方だったからこそ、日本には6千社を超える倉庫会社があり、運送会社に至っては6万社超もあるわけです。 一方で、物流を自動化するためには相応の費用を要しますが、大手企業は資本力があるだけではなく、スケールメリットを追求できるため、投資を意思決定しやすいです。一度自動化したオペレーションを確立してしまえばクローンのように横展開できます。結果として、現場の属人的スキルに依存した地場の中小企業は次第に競争力を失っていきます。 運送会社についても同じことが言えます。自動運転トラックも設備投資になるので、先行投資をしていく大手企業が優位です。本格的に実用化すれば、中小の運送会社の多くは、気が付けば自動運転トラックに仕事を奪われ、競争力を失っていくことが予想されます。 次回、最終回となる3回目では、物流の自動化を広めるカギを握っている不動産デベロッパーやマテハンメーカーの動向、そしてWMSなどのシステム連携についてお聞きします。 【この連載の記事】・2024年問題以降の物流危機 第1回:2024年問題以降に待ち受ける具体的な物流課題とは?・ 2024年問題以降の物流危機 第3回:物流「自動化」のカギを握る各業界の未来…
...
read me
プレスリリース
/ 04 Apr 2024
ラピュタロボティクス、三菱ロジスネクストと自動フォークリフト「ラピュタAFL」の販売協業を開始
ラピュタロボティクス株式会社(東京都江東区、代表取締役 CEO:モーハナラージャー・ガジャン)は三菱ロジスネクスト株式会社(京都府長岡京市、代表取締役社長:間野 裕一)と自動フォークリフト「ラピュタAFL」の販売協業を開始いたしました。
...
read me
プレスリリース
/ 03 Apr 2024
ラピュタロボティクス、株式会社Rise UPの物流センターへ「ラピュタPA-AMR」15台を納入 
ラピュタロボティクス株式会社(東京都江東区、代表取締役 CEO:モーハナラージャー・ガジャン)は、株式会社Rise UP(本社:大阪市西区 代表取締役社長:田中慎也)の物流センター(ロジスティクス千葉第1センター)に、協働型ピッキングアシストロボット「ラピュタPA-AMR」を納入いたしましたのでお知らせいたします。
...
read me