« 2024年1月 | トップページ | 2024年3月 »

2024.02.28

Cosmo-Zロックインアンプの組み立て

Photo_20240409020901

Photo_20240409020902

 

| | コメント (0)

2024.02.16

実装屋さんのマーキング検査で助かった話

実装屋さんから、検査機でマーキングがPFUIになっているという連絡がありました。

TPS3828-33という電源監視ICなのですが、正しいマーキングはPARIです。

Pari

PFUIってなんだろうと思って調べてみると、TPS76201という全く違う電源ICが出てきました。

つまり、DigikeyでTPS3828-33を発注したはずなのですが、TPS76201が送られてきていたようです。

Pfui

パッケージはSOT-23で同じなのですが、中身は全然違う部品です。

実装屋さんがマーキングの検査までしていてくれて本当に助かりました。

| | コメント (0)

2024.02.15

Cosmo-Zのユニバーサル基板を出図

Cosmo-Zの拡張コネクタに任意の回路を増設できるユニバーサル基板を出図しました。

この基板は8年前に設計して1枚だけ製造していたのですが、今回、新規にご注文があったので再製造することにしました。

Np1099

PCBGOGOに出してみてもReviewの返信がないので、JLCPCBに出し直しました。

どうやらPCBGOGOは春節のため営業部が2月17日まで休みだそうです。

JLCPCBは動いているのですが、層の構成やドリルデータが読めないとかで差し戻しをくらって、製造が止まってしまいました。

簡単な基板なのですがなかなかうまく製造に入れません。

| | コメント (0)

2024.02.12

アウディを買いにディーラーさんに行きました

前々からアウディが欲しいと思っていて、ディーラーさんに行ってきました。

最初は認定中古車が欲しいと思っていたのですが、そのディーラーさんは新車しか扱っていないことと、中古車で買うメリットがないことなどを言われ、新車で注文してしまいました。

注文したのはAudi A5 Sportbackの白のやつです。

Audia5

AudiにはA1~A8、S1~S8、Q、RS、TTなどがあります。Sは高性能なスポーツカー、RSは日本では走るところがないくらい超高級なスポーツカーとのことでした。Qは車高が高くてずんぐりしていてスマートじゃないので、私の好みではありません。TTはよくわかりません。

AとSは外観は同じですが、初めての車購入なのでAシリーズで十分です。

数字は大きさを表します。A1はかなりコンパクト。A5は4.7mくらい。A7,A8は5mくらいの長さがあります。自宅マンションの駐車場は5mの車でも入りますが、出かけた先の駐車場が狭い可能性があるのでA5がいいかなという感じです。

っていうか、もともとA5のSportbackって決めていて、実物を見に行った感じです。

Sportbackというのは、後ろが少し大きくなって荷物が多く積みやすくなっています。アウディは(荷物を運ぶ車という意味ではなく)車でのお出かけを楽しむということでSportbackとかAvantという名前になっているそうですが、要するに、後部座席の後ろが斜めになっていて容積が大きいのが特徴です。

A5だと妻の電動車いすも楽々入りました。A3だとちょっと車いすを入れるのにぶつかるかなという感じでした。

車高が低いので、電動車いすから乗り移るときに持ち上げなくてよく、ほぼ水平の移動で車に乗れることともGoodでした。

今年モデルチェンジが行われるらしく、新しいモデルはデザインがかっこ悪いので、どうしても変更前のモデルが欲しくなりました。3月か4月ごろに入荷する現行モデルの白の車を抑えてもらうために、即日注文してきました。

車に乗ってどこ行こうかな?

アウディオーナーになれるのが楽しみです。

 

| | コメント (0)

2024.02.10

なひたふ流 FPGAでFFT回路のまとめ

STFT(Short Time Fourier Transform)といって、短い時間のウィンドウをかけてフーリエ変換を行う機能をFPGAに実装する案件が来ました。

この案件の提案のために、特電が過去に作ったFFTの回路にどんなものがあるかを調べてまとめてみました。

まず、ハードウェアFFTなのですが、計測向けならば周波数間引きのアルゴリズムにするのがよいでしょう。周波数間引きというのは、ビットリバースの計算を変換した後で行い、時系列の計測データはビットリバースはせずにそのままFFT回路に与える方法です。

時間軸間引きだと、どうしても1フレーム分のデータが溜まってからビットリバースをしなければならないので、バッファする時間の遅延が発生してしまいます。

Fft4

FFTを普通にソフトウェアで書くと3重のループになりますが、なひたふ製のFFTアルゴリズムを使うとこういう感じでデータを並べ替えて計算することで、ループが1重になります。

Fft2

データの規模が小さければDRAMのような大きなメモリを使わずにBlock RAMに入ってしまうので、BlockRAMをデュアルポートメモリとして使えば1クロックで1回のバタフライ演算が可能になります。

Fft3

 

バタフライ演算の回数は、2つずつのデータで計算するか、8つ組のデータで計算するかで、かなり変わります。

これをRadix-2やRadix-8というのですが、Radix-8にすると10倍程度早くなります。ただし、FPGA内のDSPを216個とか使うので激熱になります。

Radix

FPGAでFFTを行う場合、倍精度浮動小数点とかは使えません。高速性のため演算の精度は16bitになります。

そうすると、当然ながら誤差が出てくるのですが、スペクトラム上で固定周波数のノイズとして出てきてしまいます。

Fftnormal

バタフライ演算、A+Bと、A-B×Wを計算するときに誤差を丸めるわけですが、↑の計算は切り捨てで行っています

これをA+Bの加算後で丸めた場合は下の図のようにノイズが減り、

Fftmarume1

これをA-Bの減算後でも丸めた場合は下の図のようにさらにノイズが減りました。

Marume2

16bitですから-90dBcまで行ければ十分です。

ただし、B×Wを丸めるとなぜか誤差が増えてしまいます。

Marumebad

丸める場所に何かノウハウがありそうです。

出来上がったハードウェアFFTは、このようにちゃんと動いています。

 

| | コメント (0)

2024.02.08

IEICEマイクロ波研究会の原稿を提出!

2月29日に開催される電子情報通信学会のマイクロ波研究会で発表することになりました。

その原稿締め切りが2月7日(水) 23:59だったのですが、翌朝9:00まで延長されました。

徹夜で原稿を見直して「てにをは」を直したり、言い回しを統一したり、図を分かりやすく描き直したりしていました。朝7時ごろに無事に提出。

演題は「送受信距離の変化に追従して安定受信を実現するテラヘルツ波受信回路」です。

そう!私、実はテラヘルツ波の研究をしていたのです。

 

内容は予稿が公開されるまで秘密です。

今日は一日中寝ることにします。

| | コメント (0)

2024.02.07

Cosmo-Z Mini2を製造。DACの歪率は・・・

Cosmo-Z Mini2の基板の実装が上がってきました。

Cszmini2

DACで正弦波を発生させて歪率を測ってみると・・・

-82dBを達成。

Cszmini2thd

つるっつるの正弦波が出せました。

Cosmo-Z Mini2のDACで作った正弦波の歪率は-74~-84dBcくらいまで幅があるのですが、これが何によって決まっているのか謎でした。

OPアンプの部分を全取り換えしても変わらないので、どうやらADCのICの個体差であるように思われます。

| | コメント (0)

2024.02.06

OpenGLを使ったBGAの表示でリアリティを出す

MITOUJTAGを3D化するため、OpenGLを勉強しています。

対象のICに近づくとパッケージが透けてBGAの端子が見えるようにし、遠くからだと灰色のパッケージとなるようにしました。

それにしても光源やマテリアルの作り方が分からなすぎます。

床にテクスチャを貼ったらリアリティが出てきました。


この動画は8年前の事務用PC(10万円未満)を使っているので大したGPUは使っていないのですが、これだけのポリゴンを表示させても全然フレームレート落ちません。

20年前のWindows GDIで2Dの画像を書くプログラムよりも、OpenGLで3D画像作ったほうが遥かに速い感じです。

GPUってすごいですね。

 

| | コメント (0)

2024.02.04

Cosmo-Zロックインアンプの出荷検査

納期を延ばしてもらえたので、延長してもらえた3日の間に様々なテストを行いました。

まずは1uV~100uVではなく、1uV~1000uVの範囲で測ってみたこと。

1000uv

1000uVの範囲で測ってもロックインアンプのゲインは一定で直線に乗るのですが、ゲインが1.06。もっと正確に言えば1.0605という値なのが気になっていました。

よくよく考えてみると、アッテネータを47kΩと49.9Ωで作っているから、1000:1ではなく、厳密には1000:1.0605だったのです。この誤差が見えていました。

それから、長時間計測したときの誤差が時間とともに変化していくのはよいのですが、

Longerr

夜中とか昼とか、部屋の温度ではあまり変化しないことはわかりました。

むしろ問題はCosmo-Zの金属ケースやケーブルに手が触れると1uVくらいの誤差が出てしまうことでした。

金属ケースや同軸ケーブルはもちろんアースされているのですが、どこかに何かの電荷が溜まっていて、測定に誤差を生じさせていると思われます。

 

| | コメント (0)

2024.02.01

フロントパネルをアルミと銅の複合材にした

Cosmo-Zロックインアンプは、1uV以下の微弱な電圧を測ることができる計測回路です。

このレベルの信号になると、コネクタをつないだときのGND電位の変化で計測誤差が出てきてしまいます。

下の写真は1mVの信号を1000:1のアッテネータで1uVまで落として測っているのですが、2個目のコネクタをつないだ瞬間に計測値が変わってきたりします。本当に謎なんですけどね。

Lockinconnect

コネクタ間のGNDの電位に差があるとこの問題が起きるらしいということはわかっていたので、フロントパネルをアルミと銅板と銅網の複合材料にしてみました。

Lockinmesh

穴あけ加工されたアルミや鉄、銅板を即日で作って発送してくれる業者さんがいて、昨日注文したら今日届きました。

そんで、銅板とコネクタが接触しやすくするよう銅のメッシュを銅板に張り、銅のテープで固定しました。

Lockinref_20240218000101

測定結果はこのとおり。

ファンクションジェネレータとアッテネータで1uV~100uVまで作って測ったところ、綺麗な直線に乗りました。

Lockinsweep

この直線から計測値がどれだけずれているかという誤差ですが、±0.2uVの範囲に収まりました。

41uVのあたりで少し外れた値が出ているのは、ファンクションジェネレータの中で何かが切り替わるためです。

Lockinerr

1uV~100uVの範囲を0.2uVの誤差で測定できる計測器が、できました。

| | コメント (0)

« 2024年1月 | トップページ | 2024年3月 »