チームうどん

チームうどん

ロボット相撲とうどんをこよなく愛する人達によるブログです。

はじめに

お久しぶりです、怪しい涼汰です。

しばらくブログを書かないうちに、すっかり浦島太郎状態になっていました。気づけば相撲ロボットの 500g級(ミニ)クラス が新設され、自立型に関してはルールが大きく変わっていました。さらに、JSUMO社製スタート・ストップモジュール(以下「モジュール」)を搭載して動作や停止を制御することが義務付けられていました。

このモジュールはJSUMO社から直接購入するか、国内代理店の 株式会社アミテン(amiten)から購入する必要があります。価格はそこまで高くないものの、故障や破損を考えると複数個備えておきたいところです。

 

背景と動機

僕は電子科を卒業していて、ロボットを作るうえで必要な「機械」「電気」「情報(プログラミング)」の中では、特に 電気と情報(プログラミング) が専門分野です。その強みを活かしつつ、最近では ChatGPTなどのAIツール も駆使しながら試行錯誤を重ねました。コードの書き方やライブラリの使い方を調べ、時にはAIにヒントをもらいながら、自分なりに納得のいくプログラムを組み上げることができました。

「動かない」「思った通りに反応しない」といった壁に何度もぶつかりましたが、そのたびに修正を繰り返し、少しずつ完成形に近づけていく過程はまさに電子工作の醍醐味。最終的にLEDが点灯し、赤外線信号を正しく受信して動作する瞬間は、やはり格別の達成感がありました。

高校生の頃から社会人になりたての頃まで、自立型の相撲ロボットを作っていました。しかし近年は性能が凶悪化(高速&強力な吸着)していて、調整環境も限られているため、現在はラジコン型の製作を中心にしています。

なので、モジュールは必須ではないのですが、仕組みそのものには興味がありました。
市販品を使えば確かに安心かもしれないですが、仕組みを知ることで応用の幅も広がりますし、何より自作ならトラブルが起きても自分で修理や改良が可能です。電子工作好きとしては、これは挑戦しない手はありません。

もちろん公式大会に出場する場合は規定に従う必要がありますが、ラジコン型や自主研究の範囲であれば「モジュール的な機能」を自作して試すのも面白いはず。安全面には十分配慮しつつ、オリジナルのスタート・ストップモジュールを製作してみることにしました。

そこで思いついたのが――
「いっそ自分で作ってみよう!」 という挑戦です。

 

JLCPCB様との出会い

今回の挑戦でご協力いただいたのが、青い箱でおなじみの JLCPCB 様
電子工作好きなら一度は目にしたことがあるであろう、世界中で利用されている基板製造サービスです。

「せっかく作るなら見た目も機能もきちんとしたものにしたい」、「信頼できる基板メーカーは心強い」――そんな思いから、基板製造はJLCPCB 様にお願いしました。

ちなみに、高校生時代は感光基板を使って基板を自作していました。
当時はCADソフトもまだ一般的ではなく、パターンを印刷して感光材に焼き付け、現像してエッチングして…という、まさに「手作り感」満載の工程でした。制服が汚れたり失敗も多かったですが、完成したときの達成感は格別で、電子工作の楽しさを肌で感じられる貴重な経験だったと思います。

それに比べると、今はJLCPCB 様のような基板製造サービスを利用すれば、ガーバーデータなどをアップロードするだけで高品質な基板が早いと一週間くらいで届く時代。昔の苦労を思い返すと、便利さに感動すら覚えます。まさに「青い箱が届くとワクワクする」というのは、電子工作好きなら共通の気持ちでしょう。

 

設計と仕様

仕様を整理するとこんな感じです。

  • 使用電圧:5V
  • 入力:赤外線信号の記録スイッチ、赤外線信号の受光
  • 出力:赤色LED、青色LED、出力信号(5Vまたは0V)

合計で 5個のI/Oポート が必要になります。この仕様は、富士ソフトが公開しているモジュールの詳細ページを参考にしました。公式の仕組みをベースにしつつ、自作する際に最低限必要な機能を抜き出した形です。

 

制御ICの選定

仕様を整理したところで、次に取り掛かったのは 制御を担うICの選定 です。
今回必要なのは、入力と出力を合計5ポート扱えること、そして赤外線信号を受けて処理できること。これらを満たすために、マイコンを中心に候補を検討しました。

  • 小型マイコン(PIC / AVR / STM32 / Arduino系)
    → 入出力ポート数が十分で、赤外線受信モジュールとの相性も良い。
  • 汎用ロジックIC
    → シンプルな構成で済むが、柔軟性に欠ける。
  • ワンチップマイコン
    → プログラムで自由に制御できるため、LED点灯や出力信号の切り替えも容易。

最終的には、拡張性や開発のしやすさを考えて 小型マイコン を選ぶことにしました。これなら赤外線信号の受信からLED制御、出力信号の生成まで一括で処理でき、将来的に機能追加も可能です。

候補はいろいろありましたが、最終的に選んだのは Arduino NANO SUPER Mini

  • 小型でロボット内部に収まりやすい
  • USB Type-Cで簡単に書き込み可能
  • 必要なI/Oポート数を満たす
  • 安価で入手性が良い

これなら赤外線受信からLED制御、出力信号の生成まで柔軟に対応できます。

 

試作と失敗談

配線を組んで、LEDや赤外線受信モジュールを差し込んで…と、雰囲気だけは「それっぽい」感じになったのですが、そこで重大なことに気づいたのです。

  • 赤外線リモコンがない。
  • そもそもプログラムができていない。

つまり、肝心の「信号を送る側」と「それを処理する頭脳」がまだ準備できていなかったわけです。部品を並べただけでは当然動くはずもなく、まさに「形だけのモジュール」状態。

この瞬間、「やっぱり基礎からちゃんと準備しないとダメだな」と痛感しました。電子工作ではよくある話ですが、こういう“抜け”に気づくのもまた試作の大事なステップですね。

まずは SONYフォーマットで送信できる赤外線リモコンを探しました。
しかし、正直なところSONY純正のリモコンはどれもいい値段がしますし、最近は赤外線式よりも電波式が主流になりつつあるため、安価なものを見つけるのにかなり苦労しました。

電子工作あるあるですが、こういう抜けに気づくのも試作の大事なステップですね。

その後、ELPA社の汎用リモコンを入手してようやく環境が整いました。

 

プログラムと学び

試行錯誤を繰り返し、最終的に以下の動作を実現しました。

  • スタンバイ → 待機
  • レディ信号受信 → 赤色LED点滅
  • スタート信号受信 → 青色LED点灯+5V出力
  • ストップ信号受信 → 赤色・青色LED交互点滅+出力停止

公式モジュールと同じ挙動を自作で再現できた瞬間は格別でした。

 

プログラムは書いた通りに動く

今回の製作を通じて改めて実感したのは、「プログラムは書いた通りに動く」 ということ。
当たり前のようでいて、これが本質なんですよね。恩師の教えの一つです。

  • 思った通りに動かないのは、プログラムが間違っているからではなく、自分の意図とコードが一致していないから。
  • 機械は嘘をつかない。書いた通りに忠実に動く。
  • だからこそ、プログラミングは「自分の考えを正しく伝える技術」でもある。

この言葉は、電子工作やロボット製作に限らず、ソフト開発全般に通じる普遍的な真理だと思います。

 

プログラムコードは長くなるのでここでは割愛しますが、今回の仕組みは以下のように動作します。

  • スタンバイ状態
    → 何も動作せず待機。
  • レディ信号受信
    → 赤色LEDが点滅。
  • スタート信号受信
    → 青色LEDが点灯し、5V信号が出力される。
  • ストップ信号受信
    → 赤色と青色のLEDが交互に点滅し、5V信号は出力されなくなる。

この一連の動作は、公式のモジュールと同じ挙動になっています。つまり、自作ながらも「公式仕様に準じたモジュール」を再現できたわけです。完成したプログラムをArduino NANO SUPER Miniに書き込み、再びブレッドボード上で動作テストを行いました。ブレッドボード上でのテストながら、公式モジュールと同じ動作を自作で再現できたのは大きな達成感がありました。やはり「プログラムは書いた通りに動く」という名言の通り、意図を正しくコードに落とし込めば忠実に応えてくれるのだと改めて実感しました。今回使用したブレッドボードは 手持ちの小型タイプ。
そのため、部品を並べるとすぐにスペースが埋まってしまい、配線はどうしてもうどん(スパゲッティ)状態になってしまいました…。見た目は少々ごちゃごちゃしていますが、試作段階では「動けばOK」。
むしろこの雑然とした雰囲気こそが電子工作のリアルであり、完成基板に落とし込む前の大事なステップだと思っています。

恩師の言葉を改めて実感しました。機械は嘘をつかず、意図を正しくコードに落とし込めば忠実に応えてくれるんです。

 

基板化と構成

基板は以下の3(4)つに分割しました。

  • 赤外線信号の受光部
  • 赤色・青色LEDの表示部
  • メイン制御部

高校生時代は、AutoCADでパターンを描き、透明フィルムに印刷して感光基板に貼り付けるという、まさに手作業の世界でした。エッチング液の匂いと、現像の緊張感…。失敗すれば一からやり直しで、完成までの道のりはなかなか険しかったものです。しかも作る基板は片面基板で基板カットやドリリングも手作業です。

それが今では、KiCadなどの基板設計ソフトを使ってデータを作成し、ガーバーファイルを生成してJLCPCB 様へ発注すれば、最短で1週間ほどで手元に届く時代。昔の苦労を思い返すと、便利さに感動すら覚えます。

  • 手作業 → 失敗も多いが達成感あり
  • 現在 → ソフトで設計 → ガーバーデータ → 発注 → 高品質な基板が届く

まさに「電子工作の環境はここまで進化したのか」と実感する瞬間です。

パターンの書き方や部品配置は製作者によって異なるため詳細は割愛しますが、 ピンヘッダを使用しての分割基板にしました。

  • 赤外線信号の受光部
  • 赤色・青色LEDの表示部
  • メイン制御部

これらをそれぞれ分けて基板化し、ピンヘッダにてケーブルで接続する構成にしました。

必要に応じて基板ごとに交換できるように設計し、 ネジ固定できるようにして、ロボットに組み込みも容易かつ安定した動作ができるようにしました。

このようにモジュールを分割して接続する方式にすると

  • メンテナンスが容易
  • 部品交換が簡単
  • 配線の整理がしやすい
といったメリットがあり、試作から実装までスムーズに進められます。デメリットとしては、公式がチップ部品を中心に使ってICを使うことで15.4×12.6(mm)とかなり小さいものの、自作はメイン制御部分で30×30(mm)、赤外線信号の受光部や赤色・青色LEDの表示部で15×15(mm)と大きくなってしまいました。

 

成果と今後

  • 公式品より安価に仕上げられた
  • プログラムや基板設計の学習につながった
  • 大変有意義な経験となった

今後は今回の知識と経験を活かし、より高度な回路設計や小型化に挑戦していきたいと思います。

次のステップは 500g級(ミニ)クラスのラジコン型モータードライブ基板 の製作です。

 

結び

最後に、基板製作にご協力いただいた JLCPCB 様に心より感謝申し上げます。
高品質で迅速、そして低コストなサービスにいつも助けられています。
これからも挑戦を続けていきますので、引き続きよろしくお願いいたします。

生存報告!

ルーマニアのロボット相撲大会に行ってきました。

渡航期間:2024/10/30-11/06

フライト:成田↔イスタンブール↔ブカレスト

この大会、初日が予選のブロック毎の総当たりで、上位が翌日の決勝に進む方式です。

なので予選で1,2回負けても決勝に進めたりします。そしてなんと、1カテゴリーにつき1人2台までエントリー出来るので、3kg自立と3kgラジコンで1人4台エントリーできます!さらに500gの自立型も合わせると1人で6台エントリー出来るので、苦労して海外行って1回戦負けたら終わり、ということはなく、大会を十分に楽しむことができます。尚、エントリー費用はチーム単位で定額なので、何人何台参加しても同じ金額です。

是非皆さんも参加してみてください。


RobochallengeのHPはこちら

https://robochallenge.ro/


大会動画

https://youtu.be/OULl9Ty9-Lg



お久しぶりです

昨日はMEX金沢場所に参加させて頂きました

朝大阪で仲間を回収し
一路金沢へ

ラジコン型参戦したのは富山工業さんと石川県工さんとうちのチームで計7台でした

結果は僕が三位
いわちが初戦敗退でした
しかしモーターがだめになってしまったため。夏までには原因と改良して望みたいと思います。

金沢場所参加された方お疲れ様でした
また、どこかで…
おひさしぶりです。


MEX金沢以来の本格的な試合を富士ソフトでしてきました。

土俵の確認、各種相手への攻撃の仕方など練習することができいい練習会になりました。


余談ですが、今年の三重県大会見に行こうと思います。
2015年8月8日(土) 西日本工業大学 おばせキャンパスで行われた「ロボット相撲西工大杯」に参加してきました。
チームうどんからは私を含め計3名が参加しました。
参加チームは、うどん以外に、大分工、中津東、津久見、田布施農工、広島工...

試合はRC型18台、自立型16台がそれぞれトーナメントを行い優勝を目指しました。
大会は全日本の地区大会の激戦区顔負けのレベルの高い取組みが続きました。

私は優勝を逃してしまい3位に終わりましたが、地区大会に向けての課題を見つけることが出来、良い練習になりました。
他の方も、なにか得るものがあったように見えました。

次は地区大会、今回の課題をしっかりとこなして万全の体勢で臨みたいと思います。




お久しぶりです。

前日のMEX金沢場所に参戦させていただきました。
結果は金沢場所横綱とることができましたが。
うどんとして、うどんさんの一回戦敗退が痛かったです。

フリー対戦ではうどんマシン含めアマダさんや富山さんと試合していい経験になりました。

そろそろエントリー選手権始まりますかね?
南です。
新年明けましておめでとうございます。
昨年の全国大会ではめでたく?3位となり横綱の義務?からも解放されましたので、ようやく以前より画策していた自立型の開発に着手します。
自立型の目標は、3年以内に優勝することです。

コンセプト:ラジコン型の動きをする自立型!
普通に作っても面白くないし、周りと同じ事をやっていても頂点には立てないので、他の人がやらなさそうなラジコン型みたいに動けるやつを作ります。
自立型では重くて遅いロボットが優位になる傾向がありますが、ラジコン型ではただの的なので、ラジコン型みたいに動けば重くて遅いロボットをただの的として扱えることでしょう(笑)

課題1:全方位センサーの製作!
自立型をラジコン型の様に動かすのは意外と難しくて、ロボットに土俵上の自分の位置と敵の位置を認識させる必要がありますが、これには従来のセンサーでは対応できないので、360度の視野がある全方位センサーをつかわなければなりません。しかしながら、現在相撲ロボットにつかえるレベルの応答速度をもつ全方位センサーは市販されていないので、自分で作るしかない!ということで、がんばってこれから製作していきます。

課題2:白線センサーを使わない!
ラジコン型みたいに動く!ということは、当然白線センサーなんて使えません(泣)
傷だらけの塗装の剥げた鉄板の上でラジコン型と一緒に対戦できるものを目指します。
理論的には全方位センサーで土俵上の自分の位置が分かるので、それを頼りに落ちない動作をさせれば大丈夫なはずです。念の為に土俵の縁を検出するセンサーはいれる予定ですが....


自立型の経験がないのにこんなに難しいことばかりやって大丈夫なのか、かなり心配ですが、完成したら最高に楽しいと思うのでがんばって製作します。
尚、今年の大会に間に合うかは、かなり怪しいです。
どーも、皆様全国大会お疲れ様でした。
いやー全国大会上がるつもりが負けてしまって上がれんかったけどあぽたんの補助員で出てきました。

結果としては非常に惜しいが十分な成績になり満足しています。

あぽたんの試合は全部危ないものだったなぁ…
特に二回戦!

あれはいかんよ。
次ないようにせんとあかんよー。

全国大会が終わって二次会の交流会は自分の車体直して持って来ればよかったなーと改めて後悔(@ ̄Д ̄@;)
アレックスとの試合で車体真っ二つにしてしまったのはあかんかったなーアジモフのみんなは笑ってたけど^^;
来年はメキシコ行って向こうでロボット相撲やりたいなぁ…てか行くんだけどね。アレックスに行くって言っちゃった^^;
てなわけで遠征までに車体改良せんとな
次はロボフトです。

百折不撓( ̄▽+ ̄*)

以上。

こんばんわ、あぽたんです。

昨日行われました全国大会昨年覇者の「ファルコン」さんを倒すことはできましたが
決勝戦で負けてしまいました

反省すべき点は
練習時間が1時間満たなくて戦術が少なすぎたこと
最後の最後で相手を冷静に見れていなかったこと
決勝前二つの試合でのダメージを修復しきれていなかった

来年はチームうどんで首位奪還を目標に練習していきます。