2018年7月15日日曜日

KiCadでビアのプロパティを一括で変更する方法

久しぶりにKiCadを開いてプリント基板を作ったら,デザインルールのビアの設定を忘れていて,全部のビアの直径が 0.0048mmだけ大きかったので,テキストエディタで直します.


4層基板であること以外はいつも通りだったのですが,ビアのデザインルールの設定を忘れていました.




elecrowに発注しようと思っていたのですが,ビア径は0.6048mm以上でした.

「PCBサービスのQ&A」, elecrow,
<https://www.elecrow.com/wiki/index.php?title=Q%26A_for_PCB_service>より

6milは0.1524mmですので,6mil + 0.3mm + 6mil = 0.6048mmでビア直径は0.6048mmです.(#ヤードポンド法死すべし慈悲はない
さらに,ドリル直径も0.4mmに設定していますので,0.3mmに変える必要があります.

おそらく,加工誤差の範囲でしょうから,これで出しても,なにも言われないでしょうけど・・・(変えずに作って出した記憶ありますし)
気付いてしまったので,直しておきたい.けど,手作業で変えるにも55個ビアがあるので,めんどくさいな・・・と.

なんか方法がないかなと思って,とりあえずボード図のファイルをテキストファイルで読み込んでみました.


ビアらしき文があったので,一度KiCadを閉じて適当に置き換えてみました.


KiCadで再度開いてみると,ビアがちゃんと変更できてました.


無事にDRCも通ったので問題ないようです.引き直しにならなくて良かった!

以上が,ビアの一括変換の方法です.文字の大きさはKiCadの機能で一括で変更できますが,ビアを打ち間違える機能は無いようです.まぁ,需要ないですしね.

結論:引く前によくよくデザインルールは検討しましょう.

2018年5月20日日曜日

Space-track.orgからのTLEダウンロードPythonスクリプト

衛星運用の時刻を調べるときに,Orbitronなどに読ませるTLEを手動でSpacetrackのWebサイトから更新するのがめんどくさいので,Pythonでスクリプトにしてみました.
Pythonはライブラリがそろってて最近はまっています. 書き方を忘れてしまいそうなのでメモがてら投稿します.(久しぶりの投稿) 

3,4,5行目の引数を適当に変更してください.

3行目の'ID'と'password'
(Space-track.orgのIDとパスワード)

4行目の'KIT'
(Favoriteリスト名)

5行目の'KITsat.txt'
(保存ファイル名)

以上の3行を使いたいように変更すれば使えるはずです.

from spacetrack import SpaceTrackClient

st = SpaceTrackClient('ID', 'password')
TLE = st.tle_latest(favorites='KIT', ordinal=1, epoch='>now-30', format='3le')
TleFile = open('KITsat.txt', 'w')
TleFile.write(TLE)
TleFile.close()

print('TLE Update Success')

※このソースコードを使用したことによる一切の損害について責任を負いません.

参考文献
Frazer McLean(2018)「spacetrack Documentation Release 0.13.1」<https://media.readthedocs.org/pdf/spacetrack/latest/spacetrack.pdf> 2018年5月20日アクセス.

2016年3月10日木曜日

ごち缶 解説記事 第二缶 ご注文は回路ですか??

ご注文は缶ですか??の第二回解説記事

今回は回路についてです。

まず、メイン基板の回路図はこちらになります。



プリント基板

プリント基板は、KiCadで設計しています。

ミッション基板や、付属基板を面付けして、elecrow(http://www.elecrow.com/)に発注しています。

基本的に、部品は秋月電子通商(http://akizukidenshi.com/catalog/default.aspx)で手に入るものを使用しています。
以降、部品名に秋月のリンク張っていきます。

電源部

第一缶ですでに出しましたが、電源はLiPo 2セル 7.4V 450mAhです。モーターもロジックも同じものから取り出しています。

ロジック用電源は、LiPoからレギュレータICのNJM2863F33を使って3.3Vを作っています。
3mm四方のICのくせに150mAもはき出せるんで、今回の用途では十分(消費電力数十ミリアンペア)だと考えて採用しました。

レギュレータICの前に置いたLT6106CS5で電流値を電圧値に変換してます。

これと、LiPoの電圧を分圧したものをNJM2732Mで組んだボルテージフォロアでインピーダンス変換して、マイコンのADコンバータに入れています。
ADコンバータの基準電圧としてNJM2825Fを使用して、1.2Vを作っています。

D1は電源投入確認用のチップLEDで、FM(フライトモデル、大会に出したモデル)は青LEDです。

メインマイコン

メインマイコンには、ATmega1284P-AUを使っています。
選定理由は、ハードウエアのUARTが2つついていて、GPSとPCの接続に便利だったからです。
AVRを選んだ理由は、宗教戦争()になりかねないのでやめましょう(だって使いやすいんだもん

動作周波数は、3.3Vで動作保証されている最大の12MHzを採用しました。
三角関数とか少し重めの処理をさせるだろうと思って採用したんだけれど、8MHzぐらいで十分だったかもしれないです。8MHzなら内部発振使えて、部品数減らして信頼性を向上させれたのだけれども。

ニクロム線ドライバ

ニクロム線は、数A流します。(モーターより消費電流大きい)
そのため、スイッチング素子にオン抵抗の小さいMOS-FETを使用しています。
FDS4935は、ON抵抗が19mΩのPchのMOS-FETが2個入っていて、実装面積が小さくでき、都合がよかったので採用しています。(しっぽ展開用とパラシュート切断用)

Nchのほうが安価でON抵抗の小さい素子があるのですが、Pchにした理由はハイサイドでスイッチングしたかったからだったはずです。
(数ヶ月前の設計なんで、あまり覚えてない。たぶん、構体をGNDに落としたかったから、じゃないかな)

PchのMOS-FETのゲートを駆動するためにNchMOS-FETの2N7002DW(こちらもパッケージに2個入り)を使ってます。

この素子が、あほみたいに小さくて、手実装やめようかと思うぐらいでした。
0.65mmピッチなのはまだいいとして、6ピンしかないから、1番ピンがどこにあるの?状態になるし。(一応、点対称に素子が入っているんで、逆に実装しても動くけど・・・)周りの抵抗(1608サイズ)の方がむしろ大きいし、EM(エンジニアリングモデル、開発用)ではフットプリント間違えて、ウレタン線で修正しないと行けないし。もうっ!って感じでした。


モータードライバ

モータドライバは、BD6222HFP-TRを採用しました。
10V以上の耐圧性能を持っていて、2A程度を駆動できるぐらい(去年の教訓、電流容量が足りないと、ちょっとしたことでストールする)の電流駆動性能を持っているまぁまぁ小さな、できるならば表面実装のモータドライバを選んでみたら、これになりました。
ちなみに、タミヤのミニモータは3V定格ですが、7.4Vをそのまま突っ込んでます。PWMで手加減とかほぼせずに(曲がるときに片方をPWMで少し速度落とす程度)
今のところ、煙噴いたりしていないので、たぶん次の大会もこれで行こうかなと思っています。小さくてパワーがあるし。

GPSモジュール

GPSモジュールは、GMS7-CR6です。
小型のモジュールだったので採用しています。開けた場所なら50cmぐらいのところまでこれで誘導できます。
今は売り切れだし、みちびき対応の方が小さいので、次の大会では、基板を起こしてこれを載せようかなと思っています。

EEPROM

EEPROMは、1Mbit記録できるAT24C1024Bを使っています。
小さい表面実装部品(25LC1024T-I/MF)もありますが、ソケットで交換できるのと、さすがにDFNパッケージは手実装できないので、DIP品使っています。

センサー類

センサーとして、距離センサ(SRF02)と方位センサ(HMC5883L)をしっぽに載せています。
距離センサは地面との距離を測って、着地の検知に、方位センサはGPSと組み合わせて誘導するのに使います。
方位センサの高い方を使っているのは、1年前のカンサットで使っていたのを流用しているからです。

コネクタ

コネクタは、書き込みとPCとのUART、フライトピンにピンヘッダ、ミッションとの接続に1列の丸ICソケット、(相方は、丸ピンIC連結ソケット)、残りは、JSTのEHコネクタを使用しています。


2016年3月9日水曜日

ごち缶 解説記事 第一缶 ご注文は構造ですか??

ご注文は缶ですか??の第一回解説記事
今回は構造についてです。

構造のコンセプトは、水ロケットに乗せれる程度の「小型軽量化」です。



solid worksを使って設計しています。
私は機械科ではなく、応力解析とかできないので、シンプルな形で作ることにしました。

(あと、この記事タイトルを、アニメからもじって「一目で尋常でない構造だと見抜いたよ」にしたかったけれど、そんなことなかったんであきらめた)

メイン構造

メインの構造は、0.8mm厚、15mm幅のLアングルを2枚組み合わせてT字にしたものです。



のこぎりと金やすりとボール盤を使って加工しています。

駆動系

モーターはカンサットの中でかなり重量を食うので、軽量化のためにはこの選択は重要です。
軽量にするために、駆動系にタミヤギアボックスの一番小さい「ミニモーター低速ギヤボックス (4速)」を採用しました。
http://www.tamiya.com/japan/products/70189mini_lowspeed/index.htm



採用したギア比は149.9:1です。

「着地時に軸が曲がって動かなくなる」がよくあるCanSatの動かない理由の一つなので、その対策として、着地時に軸に負担がかかりにくいタイヤの構造にすることにしました。


軽量化を図りつつ、衝撃を軸に伝えにくい構造として、タイヤ自体と軸を輪ゴムで結ぶ構造にしました。

白い部品は3Dプリンタで出力しています。材料はABSです。
使った3Dプリンタは母校の高校のAFINIA H480です。積層ピッチは0.15mm


パラシュート

パラシュートは、6年前からずっと水ロケットに使っていた傘を使ったものを引っぺがして使っています。
妹が小学校低学年の時に使っていた傘なんで、かなり小さめです。



パラシュートの切断は、ニクロム線でテグス切断して行います。




しっぽ部分

しっぽには、設計途中から距離センサと方位センサをつけることにしたので、方位センサが水平になるように3DCADで設計して、3Dプリンタで出力した部品を取り付けています。しっぽの棒部分はメジャーが材料です。



展開は、メイン基板上にあるニクロム線でテグスを切断して行います。



基板

基板は、小型軽量化を図るために表面実装部品を多用した設計にしました。
elecrowにプリント基板を発注しています。




10cm×10cm 2層基板で、$12.5
急いでいたので、DHLに頼んで、送料が$16.37
計$28.87 3250円でした。

少しスペースができた(むしろ作った)ので、ロゴ入れてます。


電源

電源としてつかう電池も、モーターに並んでカンサットの中で重量を食います。この選択も重要です。
今回は、近くのラジコン屋さんに新たに入荷したLiPo2セル 7.4V450mAhを採用しています。



最終的にミッションを組み込んだ状態の待機消費電流が150mAぐらい、走行時に地面の状態によるけれど、400~500mAhの消費電流でした。30分以上は動きそうなので採用しました。

構体については以上です。
質問があったらTwitterにリプでも飛ばしてください。(メールよりそっちの方がたぶん早い)

2016年3月6日日曜日

種子島ロケットコンテスト終了

種子島ロケットコンテストに参加してきました。

CanSat部門「ご注文は缶ですか??」

諸元
  寸法  :φ80mm×240mm(しっぽをのぞく)
  重量  :284g

まぁ、要するに、1.5L炭酸飲料ペットボトルに入るサイズです。
もちろん、理由は水ロケットに入れるため。




予想通り、大会最軽量のカンサットでした。

プレゼンで水ロケットを取り出すと、会場が軽くどよめき、
さらに、「頭に乗るんすよこれ~」でウケて、(ティッピーネタってわかった人どれだけ居るんだろう
最後に、ミッション基板にしゃべらせて、プレゼンを締めました。

でもそんなことより、「草むらとかで試験した?(意訳」という質問で、「試験しました。草むらでもぐんぐん走るんですけど・・・実は松ぼっくりが一番の敵です。でも、この会場は落ちてなかったんで大丈夫そうです。」が一番反応がよかったです(なぜだちくせうw

残念ながら、実際の投下では、降下中のどこかのタイミングでプログラム停止したようで、着地しても走りませんでした。(放出直後に展開するようにしていた”しっぽ”は展開していたから、降下初期は動いていた模様)

リタイアした後、電源再投入すると、元気に動いてカラーコーンに激突しました
動いたら優勝できたのに、惜しいことをした・・・(まぁ、鹿児島高専の缶じゃっどに動かれたら無理ですけど)

不本意な結果で終えてしまいましたが、コスモテック様から「ベストプレゼン賞(CanSat)」をいただけて、とてもうれしいです。(副賞の安納いもタルトおいしかったです)

いろいろありましたが、長らく更新していなかったこのブログで、「ご注文は缶ですか??」解説記事を向こう1ヶ月ほど書こうかと思います。

理由は、「カンサット技術の全体的な向上を図るため」です。

CanSat は宇宙教育的側面が存在しますが、なかなか敷居が高いと思っています。
それはセンサー工学、プログラミング技術、電子工学、制御工学など多岐にわたる知識が必要だからです。それぞれの技術を深く知っている必要はなくても浅く広い範囲が必要とされます。
(とりあえず思いつくだけ出したけれど、まだ要るかも、人数増えたらプロジェクトマネジメントとか・・・私の最も苦手とする分野)

その敷居の高さは変えることは出来なくても、その敷居を超える踏み台を見つけるきっかけにでもなればいいなと思っています。

予定では、ロケット小僧の在籍する衛星プロジェクトの系統分けに合わせて、
・構体
・OBC(処理系)
・ミッション
・電源
・熱設計
・通信

の6要素が最低でも含まれる記事になればいいかなと計画しています。(まだ、「書くぞ!」ってコトしか決まっていない)
おそらく、前者3つは独立記事、後者3つは中身が薄っぺらいので、まとめて一つの記事かなという感触です。

まぁ、なんか偉そうなこと言ってますけど、ぶっちゃけると備忘録に毛が生えたようなものを書きたいだけです。

つたない文章で、なかなか伝わらないところもあるかとは思いますが、見守っていただけるとうれしいです。

・・・とりあえず、公開処刑にはならないように(汗

2015年11月28日土曜日

二段式水ロケット

少し前に、二段で試したんだけれど・・・


その中の一コマ・・・


意外とカッコよくね?

ちなみに、
月が写ってるんですよ(だからどうしたといえばそれまでだが・・・)
ピクセルがかなり粗いのが残念だが・・・

ちなみに、今の状況は、分離機構の改良によって、初期圧力に10気圧与えても分離するようになりました。(ヤッタネ
ただ、暴発するようになったので、水ロケット用市販品をポイッして、自作カプラに再び切り替えようかと考えてまする。
あと、種子島ロケットコンテストに向けてCANSAT製作中です。


2015年11月15日日曜日

3段式試験打ち上げ

昨日は雨が降ってましたが、雨の合間に3段式ロケットを打ち上げてみました。
(だって晴れてたら部活動の人が使ってるんだもの・・・)



ただし、1段目はダブルタンクでそれぞれの加圧などは抑えています。

1段目(ダブルタンク)
タンク容量:3.3L
初期圧力 :800kPa
水量    :1400ml

2段目
タンク容量:1.6L
初期圧力 :600kPa
水量    :700ml

3段目
タンク容量:0.55L
初期圧力 :600kPa
水量    :250ml

打ち上げてみた結果、分離機構は予想通りに動作しました。

3段目に搭載した加速度センサのデータ(単位:縦軸[mG]横軸[ms])


がしかし、1段目の能力を抑えめにした結果、7mしか上がらず、パラシュートが開く間もなく落ちてきました。1段目のパラシュート大きめに作ってるし、開くのにも少し時間がかかるようです。15mぐらい上がってもらわないと困るかな・・・

しかも、ランチャーにぶつかって落ちてきたのか、尾翼が2枚破損していました。

到達高度は65mです。
高度データ(単位:縦軸[m]横軸[ms])
加速度抑えめにしたおかげで、頂点に達するまで加速度から求めたデータと気圧から求めたデータがきれいに合ってて面白いです。

今回は、カメラ映像はないです。
一応GoProの映像あるけれどすぐに画面から離脱するし・・・

おまけ
高度データ+α