2025年03月08日

Altium Designer Tips

今回は基板設計ソフトウェア、Altium Designerの設計で便利なショートカットやKiCadとの大きな差について少し紹介したいと思います。普段、KiCadを使用しているとAltiumとの考え方の差から使い方に戸惑う点が多々あります。それらを覚書として紹介したいと思います。

■便利なショートカット
・回路設計

右回転 → スペース キー

左回転 → Shift + スペース キー

X/Y軸反転 → X/Y キー

部品検索→J-Cキー


・基板設計

基板外形 → Mechanicalレイヤーで配置→ライン、四角形のオブジェクトで作図

基板外形設定 → デザイン→基板外形→セレクトしたオブジェクトから設定

回路図から読込 → デザイン→Import Changes From *.PrjPcb

平面表示 → 2

3D表示 → 3

3D回転 → Shift+右クリック

部品検索 → J-Cキー

部品反転 → Lキー

表示モード切換 → Shift+S

ベタGND → ツール→ポリゴン→ポリゴンマネージャ

ティアドロップ → Tools→Teardrops を選択

2点間計測の結果クリア→shift+C



■その他
・プロパティ表示
 画面右下のPanelsからPropertiesをクリック

・BOM生成
 回路図設計画面のレポート→Bill of Materials

・BOM修正
 BOMのパラメータ修正は直接、BOMを変更できない
 回路図設計画面のツール→パラメータマネージャからパーツを選択して、項目を修正する

フットプリントや3Dモデル更新
 基板設計画面でツール→PCBライブラリから更新
 もしくは部品を選択、右クリックでコンポーネントに対する操作→Update Selected Components From PCB Libraries

・画面外のオブジェクトを選択
 基板設計画面で意図せずに画面外にオブジェクトが配置されて選択できないことがあります。
 この場合は画面右下のPanelsからPCB Listをクリックし、座標でソートして画面外のオブジェクトをリストから選択します。



先日、24年8月にルネサスがAltium社を買収したことで、今後、Altium Designerの日本ユーザーがより多くなってくると思いました。Altium Designerの日本語の情報は少なく、見つかっても古いバージョンの情報だったりして、検索だけでは解決策が見つからないことが多々あります。今回、紹介しきれなかった項目については別の機会に紹介したいと思います。
posted by Crescent at 00:00| Comment(0) | TrackBack(0) | 電子工作 | このブログの読者になる | 更新情報をチェックする

2025年02月08日

万年カレンダーユニット

今回は先日、スイッチサイエンスで販売開始したデバイス、万年カレンダーユニットについて、紹介したいと思います。

以前からサイズ2.13インチ、解像度250x122、消費電流14uA前後の超低消費電力LCDを活用したいと考えていました。Aliexpressの商品サイトにはe-paperと記載がありますが、電源断で表示が消えるため、厳密にはe-paperではありません。ただし、非常に消費電力が小さいことからバッテリやキャパシタを組み合わせればe-paperのように使え、高コントラストで見やすいことからこのような表現をしていると思われます。また、詳細は不明ですが、見た目や挙動からベースはシャープのメモリ液晶から派生したLCDだと思われます。

海外では高解像度、超低消費電力、高コントラストの特徴を活用したデバイスがいくつか紹介されています(hacksterhackaday)。

高解像度、超低消費電力、高コントラストの特徴を活かし、日頃からデスクサイドで活躍できそうな万年カレンダーを設計してみました。市販品の万年カレンダーは壁掛けタイプや大きなものが多いと感じていました。パソコンのディスプレイ横に置いても邪魔にならないサイズ、サイズ幅82mm 、高さ32mm、奥行30mm(突起部、USBコネクタ除く)にしてみました。


img1.jpg


マイコンは今なら低消費電力のRP2350を選択しますが、開発段階では販売されていなかったため、RP2040を使用しています。電池で駆動させるため、電源管理ICとしてプッシュボタンロードスイッチ、XC6194を使用しています。XC6194は押しボタンでON/OFFするためのロードスイッチで、ONのパルス信号を送ると、ロードスイッチがON、ラッチします。今回は押しボタンのパルス信号の代わりにRTCのINT信号に接続し、RTCのINTを1分タイマ割込に設定することで、電源管理ICからRP2040を1分に1回、起動させています。LCDの描画処理後、シャットダウン信号をRP2040からXC6194に出すことでOFFさせています。

BLEデバイスに限らず、電池駆動のデバイス開発に便利なPower Profiler Kit II (PPK2)で1分間の電流を測定したところ、平均200~300uAと分かりました。2000mAh程度のニッケル水素充電池で約1年程度の寿命を実現することができました。なお、電流や電池寿命は使用環境や使用方法によって大きく変動するため、数値を保証するものではありません。



posted by Crescent at 00:00| Comment(0) | TrackBack(0) | 電子工作 | このブログの読者になる | 更新情報をチェックする

2025年01月11日

RP2040 BOOTスイッチの注意点

明けましておめでとうございます。本年もよろしくお願いいたします。RP2040を実装したある組込基板を開発している中で不思議な現象に悩まされていましたが、原因が分かったため、紹介したいと思います。

不思議な現象として、電源投入後、概ね正常に起動するが、時々起動しないという現象でした。起動しない状態になった際、RSTボタンを押すとすると正常に起動しました。プログラムが意図せずハングアップしているのかと思い、watchdogを有効にしてみましたが、上手くwatchdogのRSTが働かない・・・・という現象でした。


原因としてはBOOTがLOWと判断され、意図せずに書き込みモードで起動していたようです。基板の電源仕様の影響も多少ありますが、真因としてはBOOTスイッチのチャタリング防止0.1uFのキャパシタが邪魔して、起動時にBOOT信号がLOWとして判断されていたようです。当然ながら書き込みモードではwatchdogは働かず、書き込み待機状態になっていたようです。


RP2040_BOOT_SEQ.png


RP2040のBOOTピンは外部FlashのCSピンと併用のため、起動直後にCSの状態を見て、通常起動するか、書き込みモードに入るか、判断される仕様です。RP2040のデータシートを確認するとCSのプルアップを有効にしてから100usec後にCSの状態を確認するようです。推奨回路やPico基板では10kΩでプルアップしつつ、1kΩでBOOTスイッチに接続されています。その回路そのままであれば問題ありませんが、抵抗で接続されたBOOTスイッチに更にキャパシタがあるとローパスフィルタとなってCSの立ち上がりが遅くなります。それにより、電源投入直後にCSがLOWと判断され、意図せず書き込みモードに入っていたようです。

電源の立ち上がりや最初のBOOTローダの起動時間を無視して、単純にCRのローパスフィルタとして考えると、抵抗は合計11kΩ、キャパシタは0.1uFなので、立上りは約2msecとなり、起動時の100usecに間に合いません。100usecに間に合わせるためには理論上、キャパシタを3.3nF程度より小さくする必要(3.3nF→立上り84usec)があります。

RP2040_BOOT_SW_Capacitor.png
今回のRP2040を実装した組込基板はRP2040自体の電源をロードスイッチで管理する仕様だったため、通常の電源の立ち上がりに比べて緩やかであったことも多少影響していると思われます。

プッシュボタンスイッチがあるとチャタリング防止のため、習慣として0.1uF程度のキャパシタをパラに入れてしまいますが...Picoの標準回路同様にRP2040のBOOTスイッチにおいてはチャタリング防止のキャパシタを入れるのは避けた方がよさそうです。もし、入れるとしても0.1uFではなく、1nF程度の十分に小さなキャパシタに限られます。RP2040の他、最近リリースされたRP2350、RP2354等のBOOTスイッチは外部FlashのCSピンと併用のため、BOOTスイッチ周辺の回路設計には注意が必要だと思いました。
posted by Crescent at 00:00| Comment(0) | TrackBack(0) | 電子工作 | このブログの読者になる | 更新情報をチェックする

2024年12月07日

StepからSVG/PNG/3DPDF変換

以前に3DデータのStepファイルを2Dに落とし込む際にFreeCADを使ってベクトルデータのままSVGファイルに変換する方法について紹介しました。複数の投影面で出力したい場合や変換したいファイルが多い場合はなかなか手間を要します。そこで新しいプロジェクトとして、Step2Svg.comのオンラインサービスを開始しましたので、こちらで紹介したいと思います。本サイトでStepファイルをオンラインで変換することで3DCADソフトウェアがインストールされていない環境でも共有や活用しやすい形式に変換することができます。

ConversionImage.png

Step2Svg.comでは3DデータのStepファイルを2Dデータもしくは3DPDF形式に変換することが可能です。2DデータはSVGやDXF、PNG形式に対応しています。3Dデータを6面にそれぞれ投影したデータとして6ファイルをダウンロードすることが可能です。なお、現時点ではサーバの制約上、Stepファイルの最大ファイルサイズは10MBに制限しています。

例えば下記のような3DCADソフトウェアがない場合にStep2Svg.comが便利です。
・他のユーザへ3Dデータを共有したい
・3DCADソフトウェアを使用せずに3Dデータを2Dデータの平面図に展開したい
・Stepファイルの中身を確認したい


例えば下記のように3DCADソフトウェアがある場合でもStep2Svg.comを活用することで更に便利になります。
・3DPDFを生成したい
・3Dデータを平面のベクタデータに変換したい


費用は1回の変換で100円です。信用支払い形式をとっているため、変換の際のユーザ登録不要、お試し変換自体は無料です。ただし、変換後のデータを削除せず、何かしらの目的をもって使用される場合はその変換に対してのみ、変換後に費用をお支払いください。


Stepファイルからイメージ図をベクターで作成する場合はSVGやPNGの変換が便利です。

3DPDF変換は3DCADデータがない環境で3Dデータを確認する際にAdobe Acrobat等のPDF Readerで確認することが可能なため便利です。なお、3DPDF変換形式をPDF Readerで開く際は通常、3Dコンテンツが無効となっているため、警告が出て表示されません。「オプション」から「今回のみこの文書を信頼する」をクリックすることで3DPDFデータを確認することが可能です。

3DPDF_Warning.png


3DPDF_Image.png

PDF Readerで3DPDFデータを立体で確認することが可能です。マウス操作で様々な向きや背景色を変更することが可能です。


現状はSVGやDXF、PNG、3DPDF形式に対応していますが、今後、要望に応じて変換形式やオプション等を増やしていきたいと思います。
posted by Crescent at 00:00| Comment(0) | TrackBack(0) | ナレッジ | このブログの読者になる | 更新情報をチェックする

2024年11月09日

Web ADC Tool

以前にWeb HID APIを用いたMCP2210とWeb HID APIでブラウザを介して磁気エンコーダの動作確認をする通信するツール、Web USB Encoder Toolを紹介しました。今回はWeb HID APIとMCP2210を応用して、ブラウザを介して簡単にSPI接続のADコンバータ、MCP3208やMCP3204と通信するツール、Web ADC Toolを実装してみました。

WebAdcTool.png


対応するADコンバータはMicrochip社製のMCP3208、MCP3204に対応しています。ADコンバータの動作確認や接続確認等に便利です。接続後、Start/Stopボタンを押すと各チャンネルを順番に200msec毎に変換して電圧値が更新されます。Web HID APIに対応したブラウザはEdgeもしくはChromeのみ対応となっており、24年9月時点ではFirefoxやSafariは対応していません。Web HID APIを用いることで専用のソフトウェアなしでブラウザ単体で様々なツールを実装できるのは非常に魅力的だと思いました。今後もWeb HID APIを用いた応用的な機能を開発して順次公開したいと思います。
posted by Crescent at 00:00| Comment(0) | TrackBack(0) | 電子工作 | このブログの読者になる | 更新情報をチェックする