Arduino UNO R4互換機その4(純正互換機「RMC-RA4M1」2)

前回取り上げた、ジャパン マイコンカーラリー用に作られた「Arduino UNO R4上位互換機 RMC-RA4M1」がとても気になるので、とうとう注文してしまいました。

注文方法などが少し特殊なのでHPでの注文方法を解説した後に、販売元が「Arduino UNO 互換」というだけあってArduino IDEが正規で対応しているので、簡単な動作確認と標準で付いてくるSDカードの読み書き機能を紹介します。
(「RMC-RA4M1」の現行バージョン(rev.2)の詳細は、以下をクリック。)

RMC-RA4M1の取り扱い

ジャパン マイコンカーラリー用の「RMC-RA4M1」は、「日立ドキュメントソリューションズ」社で発売されています。(他での販売は見つけられませんでした。)

会社のHPでの説明によれば、「RMC-RA4M1」の(rev.2.0)は、2024年3月7日に販売が開始されています。
また、商品説明によれば「発売記念価格」で、2024年10月1日までは販売価格が\3,520(10個パックは\33,000)です。

RMC-RA4M1の注文

それでは、実際の購入方法です。
日立ドキュメントソリューションズ」社のHPへ行きます。

ちなみに、商品は日本国内専売です。海外へは販売しないそうです。
「商品一覧」の「詳しくはこちら」を押します。

「CPUボード」の一番下の方にある「RMC-RA4M1」を選びます。
ここの商品説明をよく見ると「Arduino UNO互換ボードです。」と明記されていました。

今回は、1個(3,520円)を選びました。

ここのリンクを押すと、「RMC-RA4M1」の「商品詳細」が別ウインドで開きますが、注文は出来ません。
最初のページに戻ります。
黒文字の「商品のご注文」を押します。

色々な「販売規約」という説明が出てきます。

ここで書かれている重要な内容は、
1 通信販売には、クーリングオフ制度は適用されない。
2 発送費はお支払い方法に関わらず、1梱包ごとに1,100円(税込)
3 個人での購入には、代引き手数料が 1万円以下で330円、3万円以下で440円かかる
4 部品関連のみの注文には、発送費の他に1梱包ごとに梱包手数料440円(税込)が必要
ということです。

他に選択肢はないので「承諾する」を押します。

ここでやっと商品選択の画面が出てきます。
購入したいボード名を間違わずに、「RMC-RA4M1」(型番は「M-S367」)の横の「申込数量」欄に半角数字で購入したい個数を入力します。

商品が沢山あるので、一番下まで頑張ってスクロールすると「入力内容を確認する」が出てくるので押します。
「申込商品の確認」ページが開きます。
この後は、普通の通信販売と同様です。

注文後から配達まで

代引きしか選べないので、注文後に到着日時が気になります。商品受け取りの際にドライバに代金を払わねばならないからです。(不在で再配達になったら申し訳ないですから。)

日曜日に注文しましたが、すぐに「商品申込のお知らせ」というメールが来ました。
商品代の3,520円以外に、発送費 1,100円 + 代引き手数料 330円 + 梱包手数料 440円なので
合計で5,390円だと思っていましたが、梱包手数料はかからずに請求金額は4,950円でした。

メールには、上記の金額以外に「3営業日以内に発送いたします。」とは書かれていましたが、到着予定は分かりませんでした。
その後も、発送の連絡が来るのを今や遅しと待っていると・・・

本当にびっくりしました!
発送連絡より早くピンポーンと呼び鈴が鳴って、宅配便業者が玄関のモニタに映っています。
「今日は何か届く日だったかな?」と思っていると「代引きの品物です。」と言われました。
自宅にいる時間帯で良かったです。「RMC-RA4M1」が届きました。
受取の際にドライバさんに確認すると、現金でお釣りも領収書も出るそうです。(急に4,950円きっちりなんて準備できませんよね?)

商品の状態

大きめの段ボールに入って「RMC-RA4M1」が到着しました。
箱の底に、梱包材に包まれたボードが固定されています。(ほとんどが何もない空間です。)

内容物は、紙1枚の説明書とプチプチに包まれたボードが1枚です。
コネクタなどの付属品はありませんでした。
もちろん、「純正 Arduino UNO R4」のように透明なケースなどは付属しません。

付属するのは簡易マニュアルだけなので、必要な資料はネットで探します。

資料の入手

USB Tyke-Cケーブルをつないで電源を入れる前に、マニュアルを入手します。
色々と探してHPで確認できたのは、別ウインドで開いた「RMC-RA4M1」の「商品詳細」にある「取扱説明書(簡易版)」と「回路図」

最初のページの黒文字の「ダウンロード」を押すと開く「ダウンロード(H8マイコン以外に関する資料)」ページにある「RMC-RA4M1(rev2.0)基板 実習マニュアル」が入手できます。
(実際には、このマニュアルが唯一の資料でした。)
ここには実習マニュアルで使用するプログラムもダウンロードできます。

「RMC-RA4M1」は、Arduino UNO 互換機なのでArduino IDEで開発が出来ますが、必要に応じてここにある「統合開発環境e2studio 操作マニュアル」を参照して、ルネサス社の開発環境である「e2studio」を使うこともできます。

「RMC-RA4M1 取扱説明書(簡易版)」は、商品についてきた説明書と同じ内容です。
「RMC-RA4M1(rev.2.0)回路図」は、「RMC-RA4M1(rev2.0)基板 実習マニュアル」にも同じ内容が含まれているので、特にダウンロードする必要はありませんでした。

マニュアルの内容

「RMC-RA4M1(rev2.0)基板 実習マニュアル」を詳しく見ていきます。
RMC-RA4M1(rev1.0)は、昨年の講習会で配られた限定バージョンで、現在は無かったことにされているようです。

このマニュアルは、第1.00版で、発行日付は 2024.03.15 、発行元は「ジャパンマイコンカーラリー実行委員会」です。
内容は、概要、仕様、開発環境を整える、演習、 付録 、参考文献 について記載されています。
詳しく見ていきましょう。

1 概略

「RMC-RA4M1(rev.2.0)」とArduino Uno R4の比較が出ています。

2 仕様

ボードサイズ、外観、回路図などがまとめられています。

3 開発環境を整える

Arduino IDE(ver.2.2.1を例に説明しています。)をダウンロードしてインストールし、「RMC-RA4M1(rev.2.0)」用のファイルを追加します。
Arduino IDEを起動します。「ファイル」「基本設定」を開きます。

「追加のボードマネージャー」欄に「https://j-mcr.net/arduino_mcr/rmc_ra4m1_rev20_install.json」と入力して「OK」を押します。

このままでは、設定が出来ただけなので、Arduino IDEの左側にある「ボードマネージャー」を開いて検索欄に「rmc」と入力して出てきた「Arduino RMC-RA4M1(rev.2.0)」を選んで「インストール」を押します。
自動で必要なファイルがインストールされます。(必要に応じてファイルの許可を押してください。)

これでArduino IDEで「RMC-RA4M1」が使えるようになりました。
さらに、HPのダウンロードから入手した実習用のプログラムを解凍しておくと色々と便利です。

次のページを見てビックリしました。
「え!「ファームウェアを書き込む」って書いてある!!」
「RMC-RA4M1」は、Arduino UNO互換と書かれているのに、ブートローダが書き込まれていないようです。

ブートローダを書き込むと、次のページでは「Arduino IDEでプログラムを書き込む」になり、やっと普通にArduinoとして使えるようになります。

4 演習

演習の内容は、よくあるArduinoの入門書のように「Lチカ」から始まりますが、その後が大変充実した内容になっています。
具体的には、ディップスイッチでの操作、シリアル通信、割り込み、入出力はライブラリを使う場合とライブラリを使わない方法、PWM出力、microSDの読み書き、サーボ制御、ロータリエンコーダ、A/D変換、I2C液晶への表示、EEPROMへの書き込みです。
ここの記述だけで、よくあるマイコン入門書の内容を凌駕しています。

5 付録

付録では、「RMC-RA4M1」と「Arduino UNO R3」など他のMCUとのプログラムでの宣言による型の比較が書かれています。
また、計算に要する時間も書かれていて、「RMC-RA4M1」で int の掛け算は「0.027ms」必要だそうです。

6 参考文献

このマニュアルを記載するのに参考とした、資料の参照元が書かれています。
驚いたのは、ルネサス社やスイッチサイエンス社が書かれているのは分かりますが、個人のブログもリンク先として書かれています。「NOB」さんと「しなぷす」さんです。
気になる方は、マニュアルを参照してください。

RMC-RA4M1の動作確認

Windows11のパソコンにArduino IDEが入っているので、「RMC-RA4M1」をつないでみます。

まずは、本当にブートローダが入っていないのか確認します。
マニュアルでは、ブートローダを書き込むまでは、「RMC-RA4M1」をつないでも、デバイスマネージャーのUSBのところには「USB-SERIAL CH340K」という表示になるそうです。

USBケーブルで接続

実際につないでみます。
Arduino IDEと、このブログの「Arduino UNO R4のブートローダの書き込み」で紹介したUSB接続確認ソフトの「USB Device Tree Viewer」を立ち上げておきます。
USBデバイスにArduinoの名前は出てきません。

Arduino IDEでも確認しましたが認識できないので、本当にブートローダは書き込まれていないようです。

でも、マニュアルで記載のある「USB-SERIAL CH340K」にもなりません。
CH340Kのドライバを入れなおしても変化なしです。

もう一度マニュアルを確認します。(1度じゃないよ。3回目かな?)
「あれ?」
接続先が違いました。
「RMC-RA4M1」には2つのUSBコネクタがあって、マニュアルの3ページ目には上側のUSBコネクタは「Arduino IDE用」だと書いてあったので、上につないだままでした。
ブートローダを書き込むときは下側のコネクタでした。

ブートローダの書き込み

下側のUSBコネクタにつなぐと「CH340K」が出てきました。

「Renesas Flash Programmer」を立ち上げてブートローダを書き込みます。
すでにArduino UNO R4 互換機で何度もやっているので、ここまで来れば楽勝です。
(Arduino UNO R4のブートローダの詳しい書き込み方は、以下を参照してください。)

書き込みが完了しました。
Arduino IDEを使う前に、間違わずに上のUSB端子につなぎ変えます。

Lチカで動作確認

今度はUSB上に「Arduino」が出てきました。
(Arduino互換機と名乗っているのに、ブートローダが書き込まれていないのは、中華製の互換機以下なのでは?)

定番の「Lチカ」を書き込み正常に動作しました。

microSDへファイルの読み書き

それでは、気になっていたマニュアルの「演習9」に書かれている「microSDへファイルの読み書き」を試してみます。

事前に「RMC-RA4M1」の裏側に搭載されている microSD コネクタへ microSD カードを入れておきます。
回路的には、内部でP202 ~P205 にSDカードがつながっていますから、ブレッドボードも何も必要ありません。

使用するスケッチは、ジャパン マイコンカーラリーHPのダウンロードのプログラムから入手した「rmc_ra4m1_rev20_zisyu_data.zip」内の「microsd.ino」です。
パソコンのドキュメント内の「Arduino」に入れてArduino IDEで開きます。

SDカードを読み込むライブラリが必要なのでインストールします。
ライブラリを開いて「SD」で検索して出てきた「SD by Arduino」をインストールします。

Arduino IDEで「microsd」スケッチを書き込み、シリアルモニタで確認します。

1 microSDを確認中です… microSDを認識しました。
2 microSDに書き込みができました。
3 ファイルの内容を表示します。
------------------------------ ここから
テストです。
------------------------------ ここまで
4 プログラムを終了します。

上記のような表示が出れば成功です。SDカードに簡単に文字データが書き込み出来たようです。
本当にSDカードに書き込まれているか確認してみましょう。

「RMC-RA4M1」のUSBケーブルを取り外して、入れていたSDカードを抜きます。
「あれ?マニュアルではTEST.TXTが書き込まれるはずが、csvファイルも追加されている?」

テキストの中身を見てみます。

ちゃんとSDカードにテキストが書き込めました。
でも、スケッチの内容を見てみましたが、csvファイルを書き込むような記述はありません。
不思議ですね。

補足

「RMC-RA4M1」は、Arduino UNO R4では64ピンのMCUを使っているのと比較して、100ピンのMCUを採用しているので多数の入出力端子が追加されています。
これは、Arduino UNO R5と呼んでも良いでしょう。

まだ、細かな機能確認は出来ていませんが、マニュアル上で確認できた追加されている機能・端子は以下のとおりです。

SDカード

上で紹介していますが、SDカードが追加されています。
SDカードは、内部でP202 ~P205端子に接続されています。

RTC関係

Arduino UNO R4 Minimaでは省略されているRTC(時計を使用するための機能)のすべての機能が使用できます。
クロック用端子:P212,213は基板上にクロック取付端子が、サブクロック(32.768 kHz)用のP214,215はコネクタ4で接続できます。
(VBATT端子(MCUのピン8)は残念ながら+5 Vに直結されています。)

SSIE(拡張シリアルサウンドインタフェース)

SSIEは、サウンド処理・変換や音声認識用の機能です。
Arduino UNO R4では端子がなくて使用できませんが、「RMC-RA4M1」はコネクタ5のP400、P403~406の5つの端子がSSIE用に使用できる端子です。

I2C

Arduino UNO R4にも2つのI2C接続用端子がありますが、お互いに直結されておりチャンネルは1つです。
「RMC-RA4M1」は端子が沢山あるので、2つ目のI2Cが利用できます。
P100とP101が通常のI2Cですが、P400とP401が2つ目のI2Cチャンネル端子でコネクタ5にあります。

シリアル通信

シリアル通信も、今までのArduino UNOでは1つですが、「RMC-RA4M1」はUSB端子が2つあり、どちらの端子でもパソコンなどとシリアル通信することが出来ます。
MCUへの接続先も異なることから、同時に使用できます。(CN3が P914、P915へ、CN6が P109、P110へ接続)
マニュアルの24ページには、動作についての記載があります。

SPI

SPI通信も「RMC-RA4M1」は2チャンネル備えていますが、その内1チャンネルをSDカードに使用しているので、通常で使用できるのは1つです。
ただし、SDカードを使用していないときは、2チャンネル目を使用でます。

GPT

GPT(General Purpose Timer:汎用タイマ)とは、PWM波形を出力したり、エンコーダのパルスを入力したりする機能のことです。( ChatGPT(Generative Pre-trained Transformer)とは関係ありません。)
「RMC-RA4M1」はマイコンカー(ロボット)制御用で、GPTが0~7番まで8個とも使用できるようなので、多数のサーボモータの制御が簡単に出来そうです。

その他の機能

他にも、まだ確認できていない追加機能があるかもしれません。
例えば、多数の入出力を利用してSDカード内の画像データをカラー液晶パネルに表示することも可能かもしれません。
追加機能は、見つけ次第追記します。

発注方法の改善

「RMC-RA4M1」は、元々が「全国工業高等学校長協会の会員校が参加資格」のある競技会用に作られた、ロボット制御用の「マイコン」ですから、一般人の入手性が悪いのは仕方がありませんが、「Arduino UNO互換」としている以上はもう少し入手性を改善しても良いと思います。

特に、本家のArduino UNO R4以上の機能を持っているのに、日本の一部でしか知られていないのはもったいないです。
同じ基板で「Arduino UNO R5」として、海外にも売り出すとか出来ないものでしょうか?(どうですかルネサスの中の人?)

ダメ元で、秋月電子さんの「こんなパーツが欲しいのコーナー」に投稿してみました。
秋月さんで3,500円位で販売して送料が500円なら、沢山売れそうな気がしませんか?

コメント