Raspberry Pi 3 (Jessie)にroot 5.34.36をインストール

GROWTH実験で使用するFPGA/高速ADCボードと制御・読み出し用のDAQソフトウエアは、高エネルギー実験でよく使われるCERN/ROOTのROOTファイル形式で波形データを書き出す機能があるのですが、動作試験ができていなかったのでいくつかバグがありました。 Raspberry Piにrootをインストールして動作確認する必要があったので、以下の手順でインストールしました。 ssh -YでRaspberry Piにログインしている場合、rootだけで起動するとおなじみのスプラッシュスクリーンがでてきます。 インストールした環境は GROWTH-DAQのバグについては修正完了後、インストール方法や実行例の記事をアップロードします。 ちなみに、Raspberry Pi上でのコンパイルはmake…

ESP8266とBME280とIFTTTでIoTボタンをつくった

Amazon Dash Buttonを汎用のIoTボタンとして使っている例がどんどん出てきている中、1週遅れの感じがしますが、ESP8266 + Arduino IDEの組み合わせが劇的に簡単だったので、IFTTTのGoogle Spreadsheet連携を使って、ライフロギング用のIoTボタンを作ってみました。 作ったのが年末休みで、Twitterで#大晦日ハッカソンがナイスタイミングで開催されていたので、投稿してみました。 シンガポールだとまだDashが買えないので、ESP8266とBME280とIFTTTで、Google Spreadsheetにイベントを記録するボタンを作りました(あるあるだけど)。ライフログに使ってみようと思います。入れ物は金沢うら田の愛香菓。#大晦日ハッカソン…

SpaceWire-RMAPのCRCを計算するサンプル

もう最近ではぜんぜんSpaceWireを使っていませんが、コンピュータの中なら出てきたので、C++11に書き直してgistにあげておきました。C++11だと、{}を使ったUniversal Initiaizationが使えるので、パケットのバイト列を入れたstd::vectorを初期化するのも楽ですね。(昔はpush_backをずらずら書いていた、、、) 参考: C++11 Universal Initialization は、いつでも使うべきなのか – Qiita Macで以下のgistのC++ファイルとMakefileをダウンロードして、同じフォルダに入れてmakeするとコンパイルされて、以下のように実行できます。Macじゃない人はMacを買ってください。 crc_example.cc – gist.github.com…

gdbでUnable to find libthread_db matching inferior’s thread libraryという警告がでる

メモ。 gdbを使おうとした時に以下の様なエラーがでてgdbでデバッグできない場合は、libpthreadやlibthread_dbがstripされていることが原因。 libpthreadやlibthread_dbを生成するクロスコンパイル環境の設定で、これらのライブラリからデバッグ情報を取り除かない設定してビルドしなおすとデバッグできるようになります(glibcの生成段階のオプションになっていることがあります)。 fileコマンドでlibpthreadの状態を確認すると、stripされていることがわかります。

GROWTH FPGA/高速ADCボード – 1 – 概要など

昨年アカデミストを通じてクラウドファンディングにも挑戦した「雷雲ガンマ線実験(雷雲中の高電場での粒子加速に迫るための実験 = GROWTH実験)」の、2016-17年の冬シーズンの観測実験にむけて、ガンマ線検出器の小型化と多点観測にむけた量産を進めています。(ちなみに実験の初期の頃の信号処理システムは、大型のデスクトップマシンと「VME」や「NIM」という規格のこれまたデスクトップPCくらいのサイズのADC/アンプボードでした。これらを格納するために人が入って数日暮らせるくらいの大きさのアルミフレーム製の小屋を(榎戸さんが)作って観測場所に持って行きました。信号処理回路やPC、データ記録装置(SDカード)まで含めて10cm角サイズに収まるようになったことは感動的なエレクトロニクス技術の進歩です) 雷雲ガンマ線実験(GROWTH実験) – 京都大学の榎戸さん、原研の土屋さん、東京大学の中澤さん、和田さん、奥田さん、理研の中野さんなどと進めている楽しい基礎科学の観測実験プロジェクト。2015年度の観測結果のまとめは「冬季雷雲のガンマ線測定を狙う多地点観測システムの新規開発」(榎戸、湯浅、和田ほか 2016年5月)を参照してください。 先日、榎戸さんの研究費でシマフジ電機とともに開発したFPGA/高速ADCボードが届いたので、週末や夜の時間をつかってFPGAのコーディングを進めました。2015年度の観測装置のSpartan-6 FPGAボードで動いていたパルス計測用のVHDLコードが、今回のボードのArtix-7 FPGAとAD9231という50Mサンプル/秒のADCチップでも動作するようになりました(8月最終週)。また、9月3-4日の週末を使って、このFPGA/ADCボードに載せてあるSPIのSlow ADC/DACとLED、GPIOピンをRaspberry…

numpy.fftのテンプレート

matplotlibのテンプレートにつづいて、numpyでFFTするときのテンプレートです。1.5 MHzのsin関数を5.8MHz 4ビット分解能のADCで5000点サンプルしたときの結果です。np.fft.fftfreq()関数で周波数軸も求められるので、Hzで表示しています。 GistにはJupyter Notebookをそのままアップロードしておいたので、プロット結果、sin.textの中身とあわせて見ることができます。  

Raspberry PiでI2C接続の128×64 OLEDに日本語を表示(美咲フォント)

先日のmbed nucleoでの128×64ピクセルOLEの駆動試験に続き、今年の冬の雷雲ガンマ線観測で使用するRaspberry Pi 3でも128×64ピクセルのOLED(Alibabaの販売サイト/Adafruitの販売サイト)をI2Cインタフェース経由で駆動してみました。画面そのものは小さいですが、16×2行のディスプレイよりも少ないインタフェース線数で、より多くの情報を表示することができます。みなさんも自分の電子工作で使ってみては。 【参考】雷雲プロジェクト – Thundercloud Project 概要 基本的にはAdafruitによるチュートリアル「SSD1306…

Pythonのスプライン補間はscipyのInterpolatedUnivariateSpline

1000ノット以上のデータを補完しようとしてメモリ不足になる場合は、numpyのinterp1dではなく、scipy.interpolate.InterpolatedUnivariateSpline(x,y,k)を使いましょう。 たとえば という感じ。 「numpy スプライン補間」で検索すると、10点くらいのデータ点をサンプルに示して、interp1dを使えと書いてある記事が散見されます。これだと10万以上のノット数ではうまくいきません。Python 2系列でしか試せていないのですが、interp1dだと10万ノットで10GBを超えるようなメモリを確保しようとして、プログラムが応答しなくなります。InterpolatedUnivariateSplineだとすぐ完了します。日本語で検索しても同じ症状で困っている人がすぐに見つかりませんでしたが、英語だとStuckoverflowで「Cubic spline memory errorCubic spline…

HongoWikiを移設しました

新しいサーバへ移動しました 東京大学のサーバが不釣になって見られなくなっていたHongoWikiを、自前のサーバに移動して再開しました。新しいアドレスは以下のとおりです。そのうち、Googleの検索ランクも戻ってくると思います。あと、Mediawiki→Jekyllの変更にともない、コメント管理サービスDisqusを使ってコメント欄も付けているので、質問や改善のコメントがある人は気軽に書き込んでください。 HongoWiki – http://ytkyk.info/wiki/ (トップページからページの一覧が見れます) トップページと同じ説明文章を掲載しておきます。ページの追加や内容の更新に興味のある人は、コメント欄から連絡してください。 HongoWikiは2007-2016年に東京大学牧島・中澤研のサーバ上で公開されていた、 高エネルギー宇宙物理学分野の研究に関連した情報をまとめるためのWikiです。 詳細はHongoWikiについてを参照してください。 2016年にサーバトラブルにより閲覧できなくなっていたものを、新しいサーバで公開することにしました。記録的な意味がほとんどで、情報のアップデートはあまりされないと思います。 もし、ギブアンドテイクの精神で、自分でページを作って室の向上に貢献したいというえらい人がいたら、コメント欄で連絡してください。Jekyllのgitレポジトリを編集できるようにして、ページの追加・内容の改修ができるようにします。Markdownで記事が書けて、gitが使えれば大学院生・ポスドク・大学のスタッフ、誰でも歓迎です。…