CircuitMaker

CircuitMakerは無料のコミュニティ主導型PCB設計ツールです。CircuitMakerでプリント基板を設計するためのリソースを参照してください。

Filter
見つかりました
Sort by
ソフトウェア
フィルターをクリア
スマートな設計を可能にするPCB設計ソフトウェアのインテリジェントな配線機能 スマートな設計を可能にするPCB設計ソフトウェアのインテリジェントな配線機能 1 min Thought Leadership 手間を省きながら仕事を終わらせる方法を見つけようとして、考え込んでしまうときがあるものです。私は初めての仕事で、お気に入りのアプリケーションを音声コマンドで自動的に起動するソフトウェアを作りました。その後は特別なプログラムをコード化し、ボタンを1回クリックするだけでレポートをメールで送ったり、アプリケーションを閉じたり、コンピューターをシャットダウンしたりできるように進化させました。 私が初めてPCB設計を手掛けた頃、利用できたPCB設計ソフトウェアは初期のものでした。当時のソフトウェアには自動配線機能が搭載されていましたが、私は使い方をよくわかっていませんでした。1日の終わりに使うアプリのように、ボタンをクリックしてお茶でも飲みに行けば、戻ってくる頃には製造にリリースできるPCBが出来上がっているものだと考えていたのです。ところが、どうでしょう。返された結果はとんでもない配線で、何時間もかけて設計をやり直すはめになりました。もちろん、楽しいものではありません。 それからの10年間、PCB設計ソフトウェアの修正と改良は何サイクルも繰り返されました。現在のインテリジェントな配線機能は、従来のものよりはるかに高度になっています。もう1つの改良点は、ハードウェア技術者が蓄積してきた知識と経験を活用できるようになったことです。従来のPCBソフトウェアは、技術者の技術や洞察力を活かせるようには設計されていませんでした。一方で、現在のPCB設計ソフトウェアを適切に使用すると、ハードウェア技術者の貴重な時間を節約しながら設計を完成させることができます。現状維持の姿勢に陥ることなくPCB設計ソフトウェアのインテリジェントな配線機能を活用するための4つの主なツールをご紹介しましょう。 1.コンポーネントオートプレーサー コンポーネントオートプレーサーは、すべてのコンポーネントを系統的に配置できる優れたツールです。大半のコンポーネントでこのツールを使うだけで配線できるのは何とも魅力的です。実際のところ、単純な設計では大きな問題が発生することはないでしょう。ただし、複雑な設計ではモジュールに応じてコンポーネントを分離しないと、ノイズのあるコンポーネントとアナログ回路の間で クロスカップリングが発生する可能性があります。この場合、コンポーネント間と配置済みのシステムで汚染が発生し、分離された相互作用が問題のある障害へと姿を変えます。 コンポーネントの配置では、熱の生成や感度のほか、信号の方向や方位など、いくつかの要素を考慮しなければなりません。これらの要素を踏まえてオートプレーサーを使用できる場合もありますが、もっと重要なのはオートプレーサーと両立することです。つまり、オートプレーサーは コンポーネントの配置を補完するために使用するべきでしょう。 2.オートルーター インテリジェントに問題を解決しながらスマートに配線する 自動配線機能に仕事を任せることに失敗した後、私はインテリジェントな配線ツールを使用することにしました。そのおかげで、「配線不可能」な基板の配線で数え切れないほどの時間を節約できるようになっています。 多くの場合、配線不可能な原因は、必要な接続の数に対応できないくらいサイズが小さいことです。この場合は、オートルーターで簡単なテストを実行して時間を節約します。具体的には、最初の2回のテストで配線ができるかどうかを確かめます。その結果、配線ができないようなら、コンポーネントを修正するか、PCBのサイズを大きくします。このテストを手動で実行すると、貴重な時間が無駄になる可能性があります。さらに悪いのは、オートルーターを起動する前に設計を始めてしまうことです。この場合、設計に何時間も費やした後で、そのサイズでは配線できないことが判明する恐れがあります。 自動配線のおすすめの使用方法の1つは、手動のインタラクティブ配線と並行してオートルーターを使用することです。ここでは手動で、電源、高速通信、アナログ信号から開始します。その次に差動ペアを配線してから、自動配線ツールを使って残りの信号を完成させます。事前に配線されている重要なトラックが、自動配線された信号によって変更されないようにしてください。 3.複数のペア配線と差動ペア配線 複数のペア配線と 差動ペア配線は、銅箔の長さを等しくして並行に維持するための優れたツールです。信号を1つずつではなく、一連の信号を同時に配線できるため、貴重な時間を節約できます。このツールはインテリジェントではあるものの、差動ペアや複数のペアの信号が他の高速信号やアナログ信号のそばに配線されないようにするのは設計者の仕事です。複数のペアや差動ペアの配線は、エンジニアリングの洞察に置き換わるものではなく、道具箱に入っている道具だと考えてください。 4.デザインルールチェック おそらく、人的ミスをなくすのに最も役立つツールはデザインルールチェック(DRC)でしょう。このチェックでは配線エラーがハイライト表示され、発生場所が拡大されるため、すぐに修正を行うことができます。優れた機能ではあるものの、PCBの成功事例を踏まえると、チェックを実行しただけで満足するわけにはいきません。もちろん、ネットの接続漏れやクリアランスの制約違反などのミスを除外するのには役立つものの、機能と経験を組み合わせれば、 GNDループやGNDプレーンの配置の誤りといった問題も特定できるようになります。結局のところ、技術者の設定によってDRCの効果は異なってきます。 近道を使えるのは、やっていはいけないことを把握している場合だけ 記事を読む
Frank Duggan: マイクロアーキテクチャーとMITでの目標 Frank Duggan: マイクロアーキテクチャーとMITでの目標 1 min OnTrack Frank Dugganと氏の父親からNYCメーカーフェアで、BEEBAについて学んだこと Judy Warner: あなたが、離散ロジックを使用する独自のマイクロアーキテクチャーを開発しようと最初に思った動機は何ですか? Frank Duggan: 私は小さい頃から、具体的な内容は知らなくても、これをやりたいと思っていました。私は自分のスナップ回路電子機器キットに熱中し、色々な機能を果たす回路を作る課題に取り組むのが好きでした。いつの頃からか、コンピューターを作り上げるのが究極の課題であると、私は決意しました。これはおそらく、コンピューターがとてもミステリアスに見えたからでしょう。そして私は、コンピューターがどのように実現されているのか理解できなかったので、設計は非常に難しいに違いないと結論しました。 Warner: 他のデバイス用のアセンブリ言語プログラミングを行ったことはありますか?もしそうなら、変更したいと思った部分はありますか、その理由は? Duggan: 他のアセンブリ言語でプログラムしたことはありません。ただ、ARMのアセンブリについて多少知っています。私がBEEBAアセンブリ言語を作成したとき、既存のアセンブリ言語の設計は考慮に入れませんでした。ただ、ハードウェアの実行する命令セットを見て、それをテキストで表現する方法を立案しました。 Warner: BEEBAのRev 2を開発するとき、最も大きな課題は何でしたか? BEEBA Duggan: 最大の課題は、命令デコーダーの設計でした。分岐とループの動作を可能にする方法を見つける必要がありました。16ビット命令では、命令のジャンプ先や、そこへのジャンプを行うかどうかを決定するための読み出し先アドレスを指定するために十分な幅がありません。しばらく案を考えた結果、システム内でデータをある場所から別の場所へコピーして動作するソリューションを思い付きました。書き込み可能な3つの場所を使用して、命令位置のバッファ処理を行います。書き込み可能な4つめの場所は、バッファされた場所へのジャンプを行うかどうかを決定するために使用されます。その場所に奇数が送信された場合、命令コンピューターはバッファされた場所をプログラムカウンターにコピーします。その場所に偶数が送信された場合、コンピューターは何も行わず、シーケンスの次の命令に進みます。これは電子的に実装が単純で、命令デコーダー基板の限られた面積に収納可能でした。 Warner: 基板のデバッグには、どのような技法を使用しましたか 記事を読む
必須のPCB設計のヒント:PCB設計にウォッチドッグタイマーを実装する方法 必須のPCB設計のヒント:PCB設計にウォッチドッグタイマーを実装する方法 1 min Thought Leadership 在宅勤務には仕事のメリットがいくつかあります。自分で食事を作ることができ、昼休みに洗濯をすることができ、好きなだけお茶を飲むことができます。私はお茶のために水を沸かすためにストーブトップのケトルを使用しているので、執筆に没頭しているときは、高い音のホイッスルでお湯が沸いたことを知らせてくれるのを頼りにしています。 時々、不注意で蓋をきちんと閉めないことがあります。その結果、ケトルは静かなままで、中の液体の水が急速にガスに変わっていても音を立てません。このシナリオでの私の不注意な行動は、お茶を少なく飲むことを意味するだけですが、組み込みシステムでは、ウォッチドッグタイマー(WDT)の操作方法を知らない場合、その結果ははるかに重大です。タイマーの操作に失敗すると、停止したマイクロコントローラーは停止したままとなり、組み込みシステムがダウンしたままになります。ウォッチドッグタイマーの仕組み、ウォッチドッグタイマー回路の実装方法、そして最初の試みで正しく機能させる方法を見てみましょう。そうすることで、このシナリオを避けることができます。 組み込みシステムがWDTを持っていても回復できなかった理由 ウォッチドッグタイマーは、ハードウェアまたはソフトウェアのウォッチドッグ回路がクラッシュした場合にマイクロコントローラーを再起動するための、電子機器におけるシンプルなフェイルセーフ機能です。STM32ウォッチドッグタイマーは、別の集積回路(IC)として、またはマイクロコントローラー自体に組み込まれた機能として利用可能です。組み込みシステム設計においてWDTを使用しないことは、しばしば許されない過ちです。 ウォッチドッグタイマーの動作方法はシンプルです。設定されたウォッチドッグタイムアウト間隔でカウントダウンするようにプログラムされます。通常の操作では、マイクロコントローラーは定期的にタイマーのカウントダウンタイマーをリフレッシュして、それが期限切れになるのを防ぎます。マイクロコントローラーが応答しない場合、ウォッチドッグタイマーをリフレッシュしません。その結果、ウォッチドッグタイマーが期限切れになると、マイクロコントローラーをリセットするためのパルスまたは信号をトリガーします。このシンプルな機能は、マイクロコントローラーがクラッシュする可能性がある設計ミスや環境要因を補償します。 しかし、WDTが失敗した場合、組み込みシステムが誤った状態から回復する可能性は低いです。これが、ウォッチドッグタイマーがマイクロコントローラーをリセットできない原因を特定することが重要である理由です。最も明白な答えは、ウォッチドッグタイマーチップが故障していることです。しかし、複数のユニットで組み込みシステムが回復できないと繰り返し発生する場合、設計に何か問題がある可能性があります。 実際に、私が設計し展開してきた数百のマイクロコントローラーベースのデバイスの中で、STM32ウォッチドッグタイマーが故障したという事例には一度も遭遇したことがありません。根本的な原因は、しばしば単純に人為的なミスです。 WDTが正常に動作しない可能性がある理由 内蔵WDTを使用する組み込みシステムでは、実行中のコードがウォッチドッグタイマーを無効にする可能性があります。これは、設定ビットが意図せずに上書きされた場合です。 外部ウォッチドッグタイマーチップは、全く異なる問題に直面します。この場合、ファームウェアエンジニアがプログラムを開発およびデバッグしているときに、外部ウォッチドッグタイマーからのリセット信号を切断できるジャンパーピンが一般的に存在します。しばしばこれらのジャンパーピンは、現場に展開する前に手動で接続する必要があります。接続されていない場合、WDTのリセット信号は切断されたままとなり、マイクロコントローラーをリセットできません。 ウォッチドッグタイマーが機能しない一般的な理由の一つは、コーディングエラーによるものです。WDTタイマーをリフレッシュする関数がプログラムの間違った部分に配置されている場合、それらは本来機能すべき時に動作しません。 リアルタイムオペレーティングシステム(RTOS)では、異なる優先順位を持つ複数のタスクがあると、マイクロコントローラのファームウェアが複雑になります。優先度の高いウォッチドッグ回路タスクは、優先度の低いタスクが異常な無限ループにある場合でも実行を続けることがあります。ウォッチドッグタイマー回路のリフレッシュが最優先タスクである場合、マイクロコントローラは正しく機能していないときにリフレッシュされません。 WDTが信頼性を持って機能することを確実にする方法 WDTがその役割を果たすことを確実にするには、ファームウェア開発者、システムインストーラー、およびハードウェアウォッチドッグ設計者が関与します。ファームウェア開発者は、内部WDTをオフにするコードオーバーランを避けるために プログラミングのベストプラクティスを適用するべきです。ファームウェア開発者は、マイクロコントローラのメモリアーキテクチャと、コード内でメモリポインターと割り当てを正しく使用する方法をよく理解していなければなりません。 その他にも、プログラムの構造は、ウォッチドッグタイマーがプログラムの適切な位置でリフレッシュされるように設計されるべきです。これは、プログラムのどこかで無限ループが発生した場合にプログラムがウォッチドッグリセットをトリガーすることを意味します。また、WDTの機能を現場でチェックするテストユーティリティを開発することもできます。これにより、外部ウォッチドッグタイマーとマイクロコントローラーの間の接続されていないジャンパーピンを見逃すリスクも排除されます。 高品質な製造可能な回路基板を構築するために必要なすべてを含む使いやすいPCBレイアウトツールにアクセスする必要がある場合は、 CircuitMakerをご覧ください。使いやすいPCB設計ソフトウェアに加えて、すべてのCircuitMakerユーザーは Altium 365プラットフォーム上の個人ワークスペースにアクセスできます。設計データをクラウドにアップロードして保存し、安全なプラットフォームでウェブブラウザを介してプロジェクトを簡単に閲覧できます。 記事を読む
PCB設計:PCBレイアウトのためのオプトアイソレータチュートリアル PCB設計:PCBレイアウトのためのオプトカプラチュートリアル 1 min Blog 二度も三度もスヌーズボタンを押してしまい、渋々ながら目を覚ますことに罪悪感を感じたことはありませんか?私の妻は、目を開けずにスヌーズボタンを押す私が世界記録を持っているのではないかと主張しています。しかし、三度目のスヌーズアラームが不思議と鳴らない時があり、時間通りに一日をスタートさせるのは負け戦になります。 電子機器では、組み込みシステムが外部センサーやスイッチからの入力信号を受け取るためにオプトカプラ回路に頼ることがよくあります。ある意味で、それらはマイクロコントローラーのアラーム時計のようなものです。理想的には、すべての信号がマイクロコントローラーに正確に伝達されます。しかし、オプトカプラのシンボルが適切に実装されていない場合、マイクロコントローラーは入力信号を見逃したり、入力がトリガーされていない時に誤って信号を検出したりすることがあります。このPCB設計オプトアイソレータチュートリアルでは、成功するオプトカプラPCBレイアウトの設定方法について話し合います。しかし、まずはこのオプトカプラチュートリアルでオプトカプラ設計ガイドがどのように機能するかを思い出しましょう。 オプトアイソレータチュートリアル:オプトカプラPCBの基本原則 オプトカプラーまたはオプトアイソレーターは、光学インターフェースを介して入力信号を隔離する電子部品です。最も基本的な形態のオプトカプラーは、単一の集積回路内に赤外線LEDとフォトトランジスタを含んでいます。電流が流れると赤外線LEDが点灯し、その強度は電流の振幅に依存します。LEDの光によってフォトトランジスタが活性化され、そのコレクターとエミッター間に短絡が生じます。 赤外線LEDとフォトトランジスタは、ガラスまたは空気によってしばしば分離されています。これにより、オプトカプラーのPCBレイアウトを通じて10kVの電気的絶縁が実現されます。その結果、オプトカプラー回路は、入力信号の環境から発生する電気的干渉から埋め込みシステムを隔離するのに理想的な選択肢となります。 電気的ノイズから埋め込みシステムを保護するだけでなく、オプトカプラーは低電圧と高電圧システムを分離するためにも使用されます。例えば、フォトトライアックは、オプトカプラーの変形であり、高AC電圧デバイスを制御するために使用できます。例えば、ACモーターです。これにより、マイクロコントローラーとその付随するコンポーネントに損傷を与える可能性のある回路の故障のリスクが排除されます。 PCBオプトアイソレーターチュートリアル:オプトカプラーでの間違い オプトカプラーは、ほとんどの設計者が遭遇する単純な受動部品です。オプトカプラーPCBを動作させることはロケット科学ではありませんが、使用する目的を損なうか、不安定な入力信号を引き起こす設計ミスがいくつかあります。 1. オプトカプラーPCBのグラウンド接続を分離しない。 基本的なオプトカプラーPCBレイアウトでは、集積回路(IC)には2つのグラウンドピンがあります。一方は赤外線LEDに、もう一方はフォトトランジスタに接続されています。PCBをルーティングする際に 両方のグラウンドを一緒に接続することは間違いです。私のエンジニアリング経験では、機械で使用される電子コントローラーでもこれを見かけました。 オプトカプラーを使用する主な理由は、二つの回路を安全に分離することです。外部グラウンドがPCBに接続されると、回路のグラウンドノイズが直接敏感なオンボード回路に結合する可能性があります。代わりに、外部グラウンドピン用の別の信号接続を作成し、入力グラウンドワイヤー用に専用のコネクタを割り当ててください。 2. 電流制限抵抗の値を間違える 適切な出力電圧を適用するだけでなく、オプトカプラーの赤外線LEDには適切な電流が必要です。最小前方電流出力の値は、該当するオプトカプラーの 電流伝達比チャートから参照できます。電流制限抵抗がオプトカプラーの最小値で動作する場合、フォトトランジスタは不規則に動作する可能性があります。例えば、スイッチからの10の有効な入力のうち、一部しか検出されない場合があります。 一方、制限抵抗の値を低すぎに設定してはいけません。これは、赤外線LEDが故障するのを防ぐためです。 通常のLEDと同様に、赤外線LEDには超えてはならない最大前方電流があります。これにより、適切な電流制限抵抗を選択することが、信頼性の高いオプトカプラーPCBの動作を保証するための重要なステップとなります。 3 記事を読む
マイクロコントローラーの故障モード: 発生理由と回避方法 マイクロコントローラーの故障モード: 発生理由と回避方法 1 min Thought Leadership 設計の成功の大部分は大学にかかっています。実験室の実験でコンデンサーを誤って爆発させる原因を学んだからではなく、思いもよらないときにマーフィーの法則が当てはまることがあると学んだからです。Warcraftゲームに参加して終わりのない任務の遂行に明け暮れていた私は、常にコンピューターに依存して活動していました。 その当時、コンピューターの性能はかなり低く、悪名高いWindowsの「死のブルースクリーン」ポップアップが時々表示されるのは珍しいことではありませんでした。Warcraftゲームが中断されることはイライラの種であり、遂行した任務がシステムに保存されず数時間が無駄になる一方で、私はコンピュータークラッシュにより重度のパニック発作を引き起こしたものです。設計者であれば、現場でマイクロコントローラーに障害が発生した場合に、同様のパニックを経験したことがあるかもしれません。 マイクロコントローラーの故障モードがシステムに与える影響 組み込みシステムでは、マイクロ コントローラー(MCU)の障害は、業務の締め切りに遅れた場合よりも悪い影響が出る可能性があります。多くの場合、MCUは、決済端末、医療機器、セキュリティーシステムなどの用途における心臓部です。これらのシステムは高い安定性を必要とし、たいていはシステム障害に強くありません。 MCUが故障すると、場合によってはシステムの稼働が完全に停止します。この状況は、ユーザーに迷惑をかけたり、重要な使用現場において安全上のリスクを引き起こす可能性があります。クライアントにとって、信頼性の低いシステムは運用能力に影響を与え、収益の損失につながる可能性があります。設計者にとっては、何百もの製品が現場で常に故障していることは、私たちの誇りに大きな打撃を与え、評判に影響することが考えられます。 マイクロコントローラーの故障の理由とその責任 信頼性のある組み込みシステムには、ハードウェア設計者とファームウェア プログラマの協力が必要です。一部の設計エラーは開発段階で検知されず、導入後にやっと問題が顕在化します。この場合、その責任の大部分を誰が負うべきなのでしょうか。 指をさす前に、マイクロコントローラーが故障する一般的な理由を考えてみましょう。 1. メモリスタック オーバーフロー マイクロコントローラーの メモリスタックは、一時的な使用を目的とした内部RAMの指定領域です。メモリスタックのサイズは制限されており、MCUによって異なります。ファームウェア プログラマがスタックサイズより大きい変数を割り当てると、ランタイム中にスタックオーバーフローが発生し、ファームウェアに問題が生じる場合があります。 2. 不正なポインター MCUファームウェア プログラミングでは、変数、またはプログラム関数のアドレスを示すために、通常 記事を読む