1 ポイント 投稿者 GN⁺ 2025-11-02 | 1件のコメント | WhatsAppで共有
  • S.A.R.C.A.S.M はルービックキューブをスキャンして解き、皮肉めいた音声コメントを付け加える3Dプリントベースのロボット
  • Teensy 4.1 マイクロコントローラと ESP32-CAM を使って映像認識と制御を実行
  • ILI9341ディスプレイ で2D・3Dグラフィック、アニメーション、リップシンクを実装し、RGBW照明をオーディオと同期
  • espeak-ngベースのTTS によりデバイス上で直接音声を生成し、皮肉っぽいセリフ集を収録
  • コード全体をRAMに収めるために Teensy コアファイルの修正が必要で、現在は 未完成の状態 で公開

プロジェクト概要

  • S.A.R.C.A.S.M (Slightly Annoying Rubik’s Cube Automatic Solving Machine) はルービックキューブを自動で解くロボット

    • 3Dプリンタで製作されたハードウェア構造と Teensy ベースの制御システムで構成
    • キューブをスキャンして解答を計算し、解法の途中で皮肉めいた音声リアクションを出力
  • リポジトリには コードと回路図 が含まれており、追加情報は Teensy フォーラムのスレッド で提供

デモ動画

主なハードウェアと機能

  • メインコントローラとして Teensy 4.1 を使用し、ESP32-CAM で画像キャプチャを実行
  • ILI9341ディスプレイ によりカスタム2D/3Dグラフィック、アニメーション、リップシンクを実装
  • ステッピングモーターとサーボモーター でキューブを操作し、位置センサー でエラーを検出
  • RGBW照明 がオーディオと同期して視覚効果を提供
  • espeak-ngベースのTTS によりデバイス上で音声を生成し、皮肉っぽいセリフ集を収録

コード修正案内

  • コード全体をRAMに収めるために Teensy コアファイルの修正 が必要
    • cores/teensy4/usb_serial.c および cores/teensy4/usb_serial2.c ファイルで
      txbuffer[]rx_buffer[] 配列定義の前にある DMAMEM 属性を削除する必要がある

注意事項

  • 現在のプロジェクトは 開発途中 で、リポジトリの状態は 整理されておらず不完全
  • 開発者の時間が取れるまで、この状態が続く可能性がある

1件のコメント

 
GN⁺ 2025-11-02
Hacker Newsの意見
  • 数年前に Cubotino を自作したことがある。構造は似ていて、GitHubリポジトリ に置いてある
    Raspberry Pi 2 W を使い、たった2つのサーボモーターで 3x3x3 キューブを混ぜて解く機能がうまく動作する
  • みなさんこんにちは。私は SARCASM の作者です。共有してくれたOPに感謝します
    制作には多くの時間を費やしましたが、本当に楽しい作業でした。他の人たちが楽しんでくれているのを見るとうれしいです
    ハードウェアとソフトウェアの詳細は Teensyフォーラムの投稿 にまとめてあります
    • 本当にすばらしい。70年代に学校へ初めて Rubik’s Cube を持って行った子だったことを覚えている。
      解き方がわからず小冊子を注文したら、届いたのは 群論(group theory) の本だった。当時の10代の私には難しすぎた
    • これを タイムマシン で1920年代に持って行き、ガラスケースに入れて5セントずつ取って見せれば金持ちになれそう
    • 外装とアームの STLファイル を共有してもらえるのか気になる。本当にすばらしいプロジェクト
    • 私もプロジェクト名のために時間を費やすことを正当化したことがあるので、共感できる
  • 関連情報として、最速のルービックキューブロボット のギネス記録は103ミリ秒
    YouTube動画Purdueの記事 を参照できる
    • そのロボットを作る間に、いくつのキューブが 爆発 したのか気になる
    • 驚異的であると同時に、少し 狂気じみて いる
    • ロボットソルバーは精神的な問題というより 物理的な問題 に近い。キューブの上面と下面の角の写真だけあれば、ナノ秒で解ける
  • デザインが本当にすばらしい。デモ動画 も見事
    • 最近見た中で最も 魅力的なプロジェクト の一つ
      もっと長い デモ動画 もある
      ソフトウェアの世界で生きていると、こういうものを実際に作るのがどれほど難しいのか気になる
      キューブ好きの趣味人として、これはオフィスでの アイスブレイク用装置 としても完璧。同僚が通りがかりにキューブを混ぜて機械に放り込めば、みんな楽しめそう
  • 私は自動で 混ぜる機械 が必要だ。キューブを2つ用意して、片方を解いている間にもう片方を混ぜるような形
    キューバーは解く時間より混ぜる時間のほうにはるかに多くを費やす。混ぜる作業こそ自動化されるべき
    • 私もそこが一番難しい部分だと思う。速く解くにはさまざまな パターン学習 が必要
      特定のアルゴリズムを反復練習できるよう、キューブを自動で特定の状態にしてくれる装置があれば本当にいいと思う
    • この分野には詳しくないが、デジタルキューブ面 のようなものはあるのだろうか。物理キューブなのに色を即座に変えられるような形の
    • ある程度までは、混ぜるのも良い練習になる。決まったアルゴリズムで混ぜれば30手以下で終わる
      体感では長く感じるが、実際にはそれほど差はない
    • 単に 解く機械を逆回転 させればいいのではないかと思う
  • プロジェクトのさらに詳しい説明は このフォーラム投稿 にある
  • HNに聞いてみたい。キューブが揃った状態で隣り合う2面を同じ方向に交互に回せば、いつかまた揃うはずだと思っていたのに、何百回やっても揃わない。なぜなのか気になる
    • たとえば RUの組み合わせ は巡回群の位数が105。つまり元の状態に戻るには合計210回の回転(各面を105回ずつ)が必要
      私も以前似た実験をしたが、速く回していると絶対に揃わなかった。おそらく 二重回転(U2) を誤って入れたか、回数を数え間違えた可能性が高い
      数学的な説明は この資料 の41ページを参照
    • 正確に 105回繰り返す 必要がある。可視化リンク を参照
      もし反対方向に回していたなら、63回の繰り返しで済む。このリンク を参照
  • 16年前に私が作った キューブロボットの動画 がある
    今回のロボットの動きは私の昔の作品ととてもよく似ている。特に 画面表示 が気に入った
  • キューブを解く過程は2段階に分かれる — 手順の計算手順の実行
    人間はこの2つを並行して行うが、ロボットはすでに計算済みの手順を実行するので、時間はひたすら 速度 に左右される
  • 作者の 個性 がソフトウェアにそのまま表れている。Douglas Adams が見たらきっと気に入っただろう
    もっと多くの 『Adams風』ロボット が出てきてほしい
    • Unsirious Cybernetics から、もっと個性的なロボットが出てくることを期待している