So-net無料ブログ作成
  • ブログをはじめる
  • ログイン
前の20件 | -

DelphiからVBAへ [EXCEL Macro]

AltiumのDelphi ScriptからEXCELのVBAに6種類のスクリプトを移植中です。
そこで気が付いたのがVBAのメニューフォームは味気ない感じがします。
ボタンの影の付き方やページコントロールの枠の境界なども見辛いです。

逆にVBAの方がプログラミングはし易いです。
驚いたのは平方根の記述です。
移植して動作チェックをしてみると答えがDelphiスクリプトと異なる場合がありました。
結局、Sqrという関数が違っていました。
VBAでは平方根はSqrなのですが、DelphiでSqrは二乗のことで、平方根はSqrtでした。
Delphiの値が正しいという基準で処理していたので、Delphiの関数の記述が違って
いるのに気が付くのに時間が掛かってしまいました。


nice!(0)  コメント(0) 

Core i9-9900Kなどの価格 [PCDIY]

第9世代でLGA1151タイプのCPUの情報をチェックしてみました。

http://ascii.jp/elem/000/001/754/1754643/
https://www.pc-koubou.jp/magazine/8720

こういうラインナップです。
「Core i9-9900K」(8コア/16スレッド/3.6GHz/TDP95W)、6万5980円
「Core i7-9700K」(8コア/8スレッド/3.6GHz/TDP95W)、5万1480円
「Core i5-9600K」(6コア/6スレッド/3.7GHz/TDP95W)、3万4980円

この中で気になるのが「Core i7-9700K」で、コア数とスレッドが同じです。
これまでのシリーズではコア数の倍がスレッドなので法則が変わったのでしょう。


nice!(0)  コメント(0) 

抵抗の形状と放熱 [Devices]

こちらにチップ抵抗とディスクリート抵抗の熱に関する比較が載っていました。
https://www.akaneohm.com/column/thermal/

チップ抵抗は端子から基板パターン経由での熱伝導が主で、ディスクリート抵抗は
端子からの熱伝導と対流と放射を利用しています。

ディスクリート抵抗で熱を発する場合は基板から浮かして実装する場合がありました。
その場合は、断面が円ということもあって対流が起きやすいです。
基板に通風用の丸穴を複数開けたこともあります。

現在ではチップ部品を使用する場合が殆どですが、パターンで熱を逃がすしかないので
工夫がしにくいです。


nice!(0)  コメント(0) 

FC2にリンクされた記事 [Blog]

以前にFC2ブログを2つ使用していたので、その記事にリンクしているものがあります。
しかし、この2つのブログが突然に閲覧できなくなりました。
恐らく、長期間使用していないブログは強制的に閉鎖したのでしょう。

いくつかの記事内の画像でそのブログにリンクしているものは画像が表示されません。
一部はブログの記事にリンクしているかもしれませんがそちらはリンク切れになってしまいます。
ご不便をお掛けしますがご了承ください。

ブログ閉鎖のメールをFC2からもらった記憶がないのに閉鎖とは、それが不思議です。


nice!(0)  コメント(0) 

べたアースの考え方 Part.2 [Altium Delphi Script]

デバイスからの熱を垂直と水平で別々に考える必要があります。
それを2層、4層、露出パッドの3種類で計算させます。

VIAの熱抵抗と水平方向の熱抵抗を計算してオームの法則にしたがって積み上げます。
細かく処理するには微分、積分が必要になるので単純化しました。

水平方向の計算は面倒なので面積を半円や円に換算して処理しています。

THV_IMAGE.png

nice!(0)  コメント(0) 

べたアースの考え方 [PCB Design]

べたアースのスクリプトを作成中ですが、参考にしているのはこちらのサイトです。

http://www.tij.co.jp/analog/jp/docs/analogsplash.tsp?contentId=49908

しかし、こちらの式に矛盾を感じました。
http://www.tij.co.jp/jp/graphics/aap/staticprod/power_pr_vol03_01-1.gif

べたアースは熱の水平移動なので、この図の一番上の図のように銅箔の断面で考察するのですが
http://www.tij.co.jp/jp/graphics/aap/staticprod/power_pr_vol03_05.gif

べたアースが大きい(広い)とLの値も大きくなってしまいます。それに応じて熱抵抗が
計算式では大きくなるということになります。
べたアースが広いと放熱効果がある筈なので熱抵抗が小さい筈と思ってしまい矛盾を感じます。

しかし、大きなべたアースの場合は、その銅箔の端っこなどは熱くならないことが多いでしょう。
それを考慮するとその部分は寄与していないので無くてもいいことになりますし、その部分が
トータルの熱抵抗の値を上げていることになるのでしょう。
熱抵抗は熱をどれだけロスなく伝達できるかという数値で、放熱効果と同じ意味ではありません。

そこでこういう考え方があります。
べたアースをシリコングリスなどの伝達物質と考えるか、それとも放熱器と考えるかです。
前者の場合は、当然ながら熱抵抗が低い方が有利です。
後者の場合は、熱抵抗という数値よりは空気と接する面積を増やして放熱効果を高くすると
いう考え方です。
ある程度のべたアースの面積がないとVIAが打てないともいえます。


nice!(1)  コメント(0) 

REF番号を変更した改版基板 [PCB Design]

回路図の2割ぐらいを修正し、REF番号を付け直した基板の改版はどうするかという話です。
8割ぐらいは以前のパターンが利用可能ですが、REF番号が異なっているのでそういう訳にも
いきません。

回路図はORCADなので複数台のパソコンで画面を並べてチェックしながら修正しました。
印刷して比較することも可能ですが、パソコンと異なりそのREF番号にジャンプしてくれないので
止めました。

設計後に気が付いたのですが、まずは該当する回路図の部分だけのWAS/ISファイルを手動で作成し
ます。
それをEXCELマクロを作成し、ピックアンドプレースファイルの該当するREF番号を差し替えて
Altiumに読み込ませて再配置するとい手です。

手動で作成したWAS/ISファイルにREF番号に矛盾がないかをチェックするプログラムが必要ですし
それでピックアンドプレースファイルを差し替えるEXCELマクロも作成する必要があります。



nice!(0)  コメント(0) 

基板の熱抵抗計算 [Altium Delphi Script]

VIAの熱抵抗がわかってもべたアースにそれを接続しないとデバイスの放熱は完結しません。
そこで基板のべたアースのパターンの熱抵抗を計算できないか検討に入りました。

参考にしたのは以前にVIAで紹介したページの次ページのこちらです。
http://www.tij.co.jp/analog/jp/docs/analogsplash.tsp?contentId=50617

放射状のパターンで抵抗ネットワークで計算しようとするものです。
そこまで厳密でなくてもいいので、2層べた、4層べた、露出パッドぐらいは計算したい
ものです。

THV_L2.png

nice!(1)  コメント(0) 

OrCAD Capture 17.2-2016のファイル入力 [PCB Design]

ケイデンスのこちらの情報によるとAltium、Eagleの回路図データが読み込めるようです。

https://www.cadence.com/japan/archive/soconline/vol22/tech/tech_3.html

どちらもアスキー形式のファイルという条件がありますが、これはありがたい機能です。

弊社ではOrCADはV9で止まっているので確認はできませんが、Altiumで回路図を描いたり
変換でAltiumで保存されている方も増えているようなので変換できるのはありがたい機能です。

取引先からOrCAD Capture 17.2でV9互換のファイルで回路図を貰ったのですが
ジャンクションが消えている箇所が多発してしまいました。
しかし、発生させたネットリストは正常でした。

近頃はOrCADの情報が少ないので記事にしてみました。


nice!(0)  コメント(0) 

Delphi ScriptのEXCELへの移植 [EXCEL Macro]

「Delphi Script」は「Altium Designer」上でないと動作しないので、他のPCBCADをお使いの
方がこのブログを訪問されるとがっかりされていることでしょう。

実際に、ダウンロードのカテゴリーでは「Delphi Script」より「EXCEL Macro」の方が閲覧数が
多いようです。
知り合いの基板設計者からも、そういう指摘がありました。

伝送線路関連や「VIAの抵抗値」などのスクリプトはEXCELに移植をした方が良さそうです。
個別ではなくてこれらをまとめて一つのマクロにした方が便利でしょう。

現状ではこれらを含んだ4つぐらいをまとめる予定でおります。


nice!(1)  コメント(0) 

VIAの安全電流 [Altium Delphi Script]

常温より10度上昇した場合の電流値を安全電流とします。
VIAの内径から抵抗値などを計算するスクリプトがあるのでそれに更に追加しました。
参考なので計算結果は灰色で表示します。

基板の表層で35マイクロで幅1mmの場合は1Aということを応用します。
内径を開いて平面にして考えたいと思います。

内径1mmなら平面にすると3.14mm幅となります。
メッキ厚は25ミクロンが一般的なので35ミクロンとの差の25/35を係数にします。
厳密に内径はメッキ厚で広がった部分なので下記のようになります。

仕上がり内径 + 2 x メッキ厚

スルーホールの断面は筒状の銅パイプですが開いて平面にした場合より熱がこもるので
係数が必要です。

1/2(0.5) としたいところですが、0.3mm幅の場合は0.3mmAと記載される場合が多いので
他の値でも矛盾のないように、調整値として0.42にしました。

仕上がり内径が0.5mm幅の場合は

(0.5 + (0.025 x 2)) x 3.14 x 25/35 x 0.42 = 0.52

0.52(A)となりますが小数第一位になるように四捨五入するので結果は
0.5(A)となります。

VIA_I_Safe.png


nice!(0)  コメント(0) 

面実装型巻線抵抗 [FootPrint]

使用電力の多い巻線抵抗にも面実装型のものが存在するようです。
サイズは若干大きいのですが4x8mmなので現実的です。

セメントではなくて樹脂での封じで2Wとは驚きです。

http://iwakimusen.jp/asset/00032/item/pdf/08-SMR-2.pdf

右下に温度上昇のグラフがありますが、負荷率100%の場合は、かなりの高温になるので
接続用のパッドや放熱用のパッドには工夫をした方がよさそうです。


nice!(0)  コメント(0) 

高周波でのPADやVIAの間隔のスクリプト [Altium Delphi Script]

べたアースなどにVIAを打つ場合がありますが、その間隔をどうするかを
周波数に関連して考察されたことがあるでしょうか。

海外の文献ではその基板が扱う周波数の波長を調べ、その1/20にすれば良いと書かれて
いました。
正弦波の一周期は360度ですが、その波形を18度ごとにGNDに何度も落すことでGND電位を保つ
という意味です。

ガードリングなどの場合はVIAを打つ間隔にに相当します。
そういうものがない低い周波数では取り付け穴PADの間隔でもあります。

100MHzであれば波長λは300cm(3メートル)なのでその1/20の150mm間隔で取り付け穴を
設けるという意味です。

3GHz(3000MHz)の場合は5mm間隔でVIAを設けるという意味です。
取り付け穴は間隔が狭いのでレジストを剥がして金属ケースにそのまま貼り付ける方法が
あります。

沢山のVIAをマシンガンのように打っても無意味ということではありません。
適当な間隔で打ってください。

べたアースのVIAは10mm間隔ぐらいにしています。
マイクロストリップラインの周囲の場合は高周波なので5mm間隔にすることが多いです。

Freq_Via_Pitch.png

nice!(0)  コメント(0) 

伝送線路の遅延時間のスクリプト [Altium Delphi Script]

以前にEXCELで作成していたものをDelphiスクリプトとして移植中です。
但し、複数の線路のMax/Minを調べるのではなく、単純に二つの線路の長さの違いを
Lとして、それから計算しています。

比誘電率は基板材料によって異なり、さらに実効誘電率の値をどうするか悩ましいので
プリセットすることにしています。

プログラムのチェックと準備ができたら、ダウンロード可能なように対応します。

DeLay_TXL_F.png
nice!(0)  コメント(0) 

VIAやPADの抵抗値 Part.2 [Altium Delphi Script]

VIAの熱抵抗も計算できるようにスクリプトを修正しました。

前の記事で、内径0.45mmで厚さ1.5mmのVIAは100となっていますが
このスクリプトで計算すると99.8となり、誤差の範囲でしょう。

発熱体の直下に存在するVIAの数でこの値を割れば、それがトータルの熱抵抗となります。
直下ではない場合は、基板の上下の熱移動ではなく拡散なので、VIAの数のカウントからは
外す必要があります。

その部分の計算は難しそうでまだトライしていません。

VIA_TR_Calc.png


nice!(1)  コメント(0) 

VIAの熱抵抗 [Altium Delphi Script]

こちらの記事の下の辺りにVIAの熱抵抗が書かれています。
http://www.tij.co.jp/analog/jp/docs/analogsplash.tsp?contentId=49908

内径0.45mmで高さは1.5mmと通常のサイズとは少し異なりますがその値が
100℃/Wとなっています。

16個のVIAを打っていれば100/16で約6.25℃/Wとなります。
1Wの場合は、僅か6.25℃のロスで部品面から半田面に伝えることが可能です。

これを検証して、これまでのスクリプトに追加する予定です。


nice!(0)  コメント(0) 

放熱器としてのVIAの間隔 [PCB Design]

その後もAVRや露出パッドのVIAの間隔はどれぐらいが適正値なのかを調べてみました。
VIAの穴径は0.3mmが一般的のようです。
これはクリーム半田がぎりぎり穴に入り込まない値だからのようです。

VIA間隔(縦横共)は総合すると下記のようになっています。
0.7mm ~ 1.2mm ~ 1.5mm

平均すると1.2mmが良さそうです。
この値であればインチ系でも理解し易いです。

0.7mm間隔の場合はランド自体が隣とかぶってしまうのでCADでの処理としては難しそう
です。(小さいデバイスの露出パッドの場合です。)


nice!(1)  コメント(0) 

インターネット上でのガーバーデータのチェック [PCB Design]

P板.COMのこちらのサイトではガーバーデータをアップロードしてクラウド上で
チェックが可能なサービスを始めたようです。

https://www.p-ban.com/kiban/com/csComEntDrc.do

修正はガーバーデータ編集になるので、恐らくその作業はしてくれないのでしょう。
メール送付した後で、エラーが戻ってきたというメールを顧客から貰うこともあるので
ガーバーエディタをお持ちでない基板設計者はこういうサービスも便利です。

その中で登場する「L/S」は「Line & Space」という意味で両者のクリアランスのことです。

http://www.pbfree.jp/topics/w-081/



nice!(0)  コメント(0) 

物持ちがいい人の性格 [ETC]

以前にも少しだけ触れたことがありますが、その続きの話です。
私自身は物持ちがよくないので逆の筈ですが、物持ちがいい人の性格の特徴の一つである
几帳面という部分だけは一致しています。

"物欲が無くて新商品に興味がない"というのは全く逆です。
断捨離は得意過ぎて、昔の自分の写真すら捨ててしまうという過激さです。

昔のことに囚われないので新しいテクノロジーが好きです。
仕事でも新しい手法を考えて、昨年とは全く違った進め方をしたいのですが
いい案が全く浮かびません。

これまでの経験では物持ちがいい人は、買い物に慣れていないのか、突然に高価な意味のない
買い物をする人を何人も知っています。

新しい設計手法に関しても過去の考え方が捨てられないので同じことだけを繰り返している
可能性があります。


nice!(0)  コメント(0) 

近くの基板製造会社 [PCB Design]

こちらの中盤あたりに日本地図上に基板製造会社を載せたイラストが掲載されています。

https://www.cadlus.com/cadlus_pcb.html

インターネットの時代で距離は気にしないとはいえ、自宅の近くに基板製造会社があれば
利用してみたくなるでしょう。

有名な「P板.COM」や「ユニクラフト」や「PB」が載っていますが、他のどれもが格安基板製造会社
とはいえないので、ご注意ください。


nice!(0)  コメント(0) 
前の20件 | -