読者です 読者をやめる 読者になる 読者になる

ラズパイを使ったシリアルデータロガー

シリアルデータロガーの出荷作業中です。 ラズパイ2のシリアル入力(1CH)から受信したデータをファイルに記録するロガーです。 伸びているケーブルでRS232レベルのシリアルを3.3Vに変換してラズパイに入れています。 pythonのソースは公開されていますのでユ…

新型気象観測シールド基板KY-ShieldRevCのソフトを開発中

中国メーカーに部品実装までの製造を頼んでいた、KY-ShiledRevC基板が昨日入荷しました。 気圧センサーをBMP180からBMP280に変更しています。 このセンサー、型番が似ていますが中身はガラリと変わっているので、ソフトを作り変える必要があり作業しています…

Arduino Shield基板で使える足の長いピンソケットを見つけた

ArduinoでShield基板をスタックする時にピンソケットの足が短すぎて、スタックした上の基板に下側基板の部品があたってしまう問題があります。 足の長いピンソケットを使えば良いのですが、意外と入手が難しいのです。 過去にこんなエントリも書いています。…

Interface2016年1月号に記事を執筆しました

内容はラズベリー・パイで使える3G/LTEモジュールのテストです。 3GPI、LTEPi、L-02Cの3種類の通信速度と消費電力をテストしました。 前回はmbedの3Gモジュール搭載ublox C027基板をテストした記事を書きましたが、ラズパイで3G/LTE通信がさらにお手軽に使え…

aitendoの40文字x4行LCD LCM4004Aでコントラスト調整するには

aitendoの40文字x4行LCD LCM4004Aで12pin(Vo)にVRをつなげてコントラスト調整するにはLCD基板上で2点修正が必要です。1. J1を半田ジャンパする 2. R8(0ohm)を除去するJ1をジャンパすることで12pinが内部の回路につながりますが、R8を介して12pin(Vo)がGNDに…

Zynq7030のARMにi2cを追加した時のdevice tree設定

Zynq内蔵ARMで動くLinuxにi2c0を追加するためのdevice tree設定です。 もちろんXPSでi2c0の追加とその後の回路合成は必要です。 aliases { ethernet0 = "/amba@0/ps7-ethernet@e000b000"; serial0 = "/amba@0/serial@e0001000"; serial1 = "/amba@0/serial@e…

Zynq7030にUART0を追加した時のLinuxデバイスツリー

Zynq7030にUART0を追加してLinuxのデバイスツリーを設定しデバイスとして認識させることが出来ました。メモとして、デバイスツリーの設定を残しておきます。 元になるデイバイスツリー(dts)ファイルは、現在動いているdtbファイルをdtcでdtsに変換して使いま…

アメダス補完計画 アメダスの空白を埋める気象ロガーの開発

湿度センサーSHT11 \4300高い! ワイヤレス多点観測システムGLOGを開発したので、その技術を応用した製品を作りたくなりました。 ちょうど気象研の研究者の方とお知り合いになれたので、気象ロガーでなにか作れないかと思いご意見を伺いました。 その方は気…

Arduinoの基板間隔15mmスタッキング用長ーいピンヘッダを作る

さて、材料はコレです。 ピンヘッダ 1×40 (40P) 6/9/3: パーツ一般 秋月電子通商 電子部品 ネット通販 http://akizukidenshi.com/catalog/g/gC-02959/ピン長6mm側の黒いプラスチック部分を取り除き、3mm側をShield基板のハンダ面から装着します…

Arduinoのスタッキングした基板間隔を15mmにするには?

最近Arduinoをいじっているのですが、一つ不思議なことがあります。Arduinoの上にスタッキングするShield基板用に付けるスタッキング用コネクタの足が短いんです!PC104のスタッキングだと基板間の間隔は15mmになります。正確には15.24mmですが。市販のArdui…

学研電子ブロックmini

兄にクリスマスプレゼントで貰った学研電子ブロックminiにちょっとハマってます。 定番のラジオも組めますが、私的には発振回路に萌えます。写真の回路は無安定マルチバイブレーターです。写真がブレブレですみません。 右端で緑のLEDが点滅しています。 昔…

放射線観測所@東京都稲城市を開設しました

事務所(東京都稲城市)にてガイガーカウンターによる放射線観測所を開設しました。 Pachubeにデータを送信して蓄積しています。下記URLからグラフが見られます。 Radiation@Inagi Tokyo https://pachube.com/feeds/48562 グラフの時刻は日本標準時JST(UT+9時…

ガイガーカウンター

冬休みの工作で、ストロベリーリナックスのガイガーカウンターキットを作りました。とりあえず自宅の室内とベランダで測定しました。22CPM(約0.2μSv)でした。特に問題ないようです。どこか値の高い場所がないかと探してしまいます。(^^;バッテリーボックスを…

Agilent 33210A周期設定のワナ

信号発生器としてAgilentの33210Aを使っています。周波数だけではなく周期の指定も出来るのですが、なんと周期指定の時の分解能が1mHzでした。 つまり、900sec周期の信号を出したくても、分解能1mHzのため1000secになってしまうのです。 驚いたよ。しかし900…

ADのグランドパターン設計資料

sciLoggerのAD基板を設計するにあたって、アナロググランドとデジタルグランド設計の参考にした資料です。AGNDベタとDGNDベタを分離して配置し、AD直下で一点接続するように推奨されていたりしますが、以下の記事では DGNDピンをAGNDベタに接続するように推…

CPU2010+AD2010電力測定

Linuxボード(Gumstix Tobi+Overo)なしの状態での消費電力を測定しました。 LinuxボードなしでもサブCPUのPIC24FJ64がシリアルで1Hzデータを出力出来ます。 DCDCに12Vを入れてその電流を測定しました。●測定条件 Tobiボード(Gumstix)なし GPS(ublox)使用 時刻…

SciLoggerサブCPUプログラムのリポジトリ公開

sciLoggerサブCPU(PIC24FJ64)のプログラムのリポジトリ(git)を公開しました。 まだ、未完成ですが。http://sourceforge.net/p/scilogger/cpu2010/開発環境はMPLABX + C30です。

sciLogger開発中

サブCPUのPIC24FJ64でAD周りのプログラム実装中です。 心配していたADのノイズがデータシートのスペックに近い値なので安心。

CPU2010開発中

CPU2010基板のPIC24FJ64GA004のプログラム開発中です。 今は、GumstixやAD基板は接続せずにCPU2010基板単体で動かしています。 デバッグ用に、GPS 1PPS LEDを接続してピカピカしています。 デバッグ出力としてPICのUART2を使用しています。PICの開発にはMPLA…

sciLogger用サブCPU基板入荷

sciLoggerのサブCPU基板(CPU2010)が実装から上がってきました。 このサブCPU基板は、リアルタイム性を必要とする処理を行います。 PIC24FJ64GA004 CPUで、GPS時計によるAD変換の同期とAD変換の制御、AD変換データへのGPS時計のタイムタグ付け、およびADデー…

FT245RL内蔵クロックを使う時の落とし穴

おなじみのUSB-パラレル変換ICであるFT245RLは、電源電圧3.3Vでも動作するICです。 しかし、落とし穴があります。 IC内蔵の動作クロック発振器を使うときは、電源電圧(VCC 20pin)が3.3Vでは動作しません。 仕様では、4.0V以上が必要です。 実際には、3.3Vで…

DSO1002Aオシロスコープ導入

AgilentのDSO1002Aオシロスコープ導入しました。Agilent(旧HP)のオシロが13万程度で購入できるようになるとは.....すごい時代になりましたね。

Lemon IDE install

Eddy開発環境インストールメモSetup.exe一発かと思ったら、そんなに簡単ではありませんでした。Leomon IDE User Guideを読むと Refer to “Eddy_DK_Programmer_Guide”for installing instructions on Cywin, Toolchain and DK Sources. と書いてあるので、ま…

組み込みLinuxボードの新星Eddy

今日はビッグサイトの組み込み技術展に行ってきました。実はアットマークテクノさんのブースがお目当てだったのですが....、デバイスドライバースさんのブースで、良いもの見つけちゃいました。SystemBase社 Eddy-CPU韓国製のARM9ベースのLinuxボードで…

CDをつなぐべきか

前日の日記の mgetty+pppdダイヤルアップサーバーの問題で、2つの対策がある。1. CD信号をつながずに/etc/ppp/optionsにlocalを指定する2. CD信号をつないで/etc/ppp/optionsにmodemを指定する2の方がスッキリするのだが、CD信号を配線しないですむ1の方…

mgetty+pppdダイヤルアップサーバー

前の日記で書いたように、Armadilloでダイヤルアップサーバーを動かそうとしていたのだが、どうもうまく行かない。Armadilloでmgetty http://d.hatena.ne.jp/ntaka206/20070521/1179803274PCからモデムでダイヤルしてもユーザー名とパスワード認証の所でずっ…

信号発生器

アナログデータレコーダのテストのために、自作の信号発生器を使用。前から作ってあるものだが、PICでDAを制御してsin波または矩形波を出力出来る。周期や電圧の精度は良くないが、長期間の動作テストには結構重宝する。高価なオシレータをロングランテスト…

ケーブルのキャパシタンス

納品した温度計に原因不明のノイズ発生。温度センサーにLM35を使って2m程度のケーブルでアンプに入れている。ケーブルがシールド線なのでキャパシタンスのせいでLM35がドライブ出来ていないみたい。多分。試しにビニール線をツイストにしただけのケーブルを…

思いこみ

今日は、アナログアンプの動作確認。ゼロショートしてオフセットとノイズ見たり、sin波入れたり。あれ、データに飛びがある...ADが悪いのか、平均化か、シリアルか...飛びの量がLSBでだいたい256になっている。やはりシリアルの抜けやビットずれかと思…

メインループで力技

複数のシリアルから受信したデータをまとめてタイムスタンプを付けて、非同期シリアル出力、同期シリアル出力する機械を製作中です。OSなど使わずにメインループ形式で作っているので、ちょっと無理矢理な感じ。(^_^;まあ作る方としては、Linuxでマルチスレ…

シリアルバッファのバグ

シリアル受信してそのデータをファイル記録する器械を作っている。ココで問題発生!シリアルデータを受信していないのに、なぜか器械が受信していると勘違いしている。それも過去の受信データがループになっている。奇々怪々...存在しない過去の亡霊デー…

動的にシリアルパラメータ変更

H8でシリアル入力のパラメータ(通信速度、パリティ、データ長、ストップビット)を動的に変更するコードを書いた。コマンド入力用シリアルから変更コマンドを入れて、各種パラメータで動作するかをチェック。チェックしていくと、シリアルドライバのバグをい…

Armadilloでmgetty

今日は、Armadilloでmgettyを動かしてダイヤルアップサーバーにする仕事。 PPPサーバー設定ファイル /etc/ppp/options modem crtscts proxyap login idle 180 /etc/ppp/pap-secrets * * "" * /etc/mgetty/mgetty.config port modem speed 38400 data-only y …

Armadilloのシリアルドライバ 8250.o vs serial.o

ArmadilloでHT3010(マルチI/O)のシリアル(16550A)を使っている。今まで8250.oを自分で改造して使っていたが、アットマークテクノのサイトにserial.oがupされていたので、それに切り替えて使っていた。serial.oならばPCM-3648のような8CHシリアルボードもIRQ…

PICで電源WDT

最近私の作るシステムでは、PICを使った電源リセット回路を付けています。PICにメインからの信号が来なくなる、つまりハングした場合にパワーオンリセットをかけます。通常はメインCPU(ARM Linux)からPICにWDTカウンタをリセットする信号を送ります。もし、…

H8で同期シリアル送信

今日は、H8の同期シリアル送信ではまってました。SCI0の送信をDMA0で行います。クロックは外部から供給です。何とか送信出来るところまでは行ったのですが、しばらくするとハングしてしまいます。こういう不安定な問題はやっかいです。しかし、解決しました…

H8 GCCインストールメモ

Win上でcygwinを使ってH8 GCC開発環境をインストールした時のメモです。newlib-1.15.0だと、なぜかsscanf()が使えないのでnewlib-1.13.0にするbinutil2.17だとエラーが出るので2.16を使う参考 H8マイコンを使ってみるブログ http://d.hatena.ne.jp/kfe-b5f6/…

H8 GCCでsprintf

WinXP上にcygwinを入れてGCCでH8用のソースをコンパイルしています。今日はちょっとハマッてしまいました。sprintf()で浮動小数点がが変換出来ないのです。 例えばsprintf(buf, "%f", val);sprintf()まで来るとプログラムが止まってしまいます。最初はsprint…

H8でプログラミング

今日は久々にプログラミングに集中出来ました。H8のGCCでバリバリ...バリバリ...リアルタイムOSも使わずに、メインループと割り込みで、バリバリ作ってます。Z80の頃に比べれば、sprintf()や浮動小数点演算がスピードやメモリの問題なく使えるのがあり…

LF-55 PC104の割り込み

L&FのLF-55(H8 3067F)にアドバンテックPCM-3643(8CH RS)をPC104バスでつなげて使おうしています。PCM3643にはTIの16C554が2つ乗っていて割り込み関係の制御はFPGAが行っています。今回は、PCM3643からの割り込みがかからない問題です。PC104バスの割り込み信…

アナログ系が原因でした

前の2つのエントリで書いた、1Hz平均データが10Hzデータよりもノイズ大きい問題ですが。アナログ系の問題でした。orz 見込み違い...DAの出力アンプに付けたノイズ取り用のコンデンサを外したら、改善しました。1Hz平均データの方が10Hzデータよりノイズ…

違った

前のエントリでノイズをH8 GCC floatのせいにしたが、違いました。(^_^;やはりノイズはアナログ的に入っているみたい。こういう問題は、時間がかかるな...

H8で加算平均に問題

今H8で10HzでAD(24bit)したデータを1秒平均するコードを書いている。 しかし1Hzデータのノイズが少し大きい。 10Hzデータを見ると一定のレベルのノイズになっているのだが、それを平均した1Hzデータの方がノイズが大きい時があるのだ。 なぜ? 加算平均を浮…

無題

電子部品の仕入れには秋葉原に行かずにRSコンポで済ましてしまう今日この頃、いかがお過ごしですか?

Cマガジン

C MAGAZINE (シー マガジン) 2006年 04月号出版社/メーカー: ソフトバンク クリエイティブ発売日: 2006/03/18メディア: 雑誌 クリック: 1回この商品を含むブログ (6件) を見るCマガジンが4月号で休刊だそうだ http://www.cmagazine.jp/ ちょっと寂しい。 で…

組み込み展2005

組み込み展2005@横浜に行ってきた アットマークテクノのSUZAKU用外部拡張ボードが展示されていた。 AD/AUDIO/CF+USB等があるが、私はCFに注目した。 これが使えればデータロガー用途にSUZAKUが使える! 活線挿抜が出来ればさらに良いのだが、抜き差しを認識…

DebainでIDE DMA timeout

マザー Advantech PCM-5820 オンボードCF(hdc)から起動 CFにdebian3.1(sarge)をネットワークinstallCF(hdc)で DMA timoutエラーが出る。GRUBの起動時にカーネルパラメータide=nodmaを渡したところ、 起動時のDMAタイムアウトエラーは出なくなった。

アットマークテクノのSUZAKU

SUZAKUにメモリーカード付けてデータロガーにしたい サブCPU(MicroBlaze)をFPGA内に追加してリアルタイム処理をさせて データをuClinuxに送りたいので情報収集公式HP http://suzaku.atmark-techno.com/SUZAKU関連記事 http://www.kumikomi.net/article/exp…

Sandisk CF

組込型PCカードドライブ(RS232C経由でPCカード読み書きが出来る/ドイツ製DOS-DRIVE)で特定のSandisk CFに問題がある。 CFの容量チェックが3回に1回くらいエラーになるのだ。 問題があるCF 裏面 (C)2000の文字 紙のパッケージ Made in Japan 問題がないCF …

組み込み展

ビッグサイトの組み込み展で坂村健氏の「エンベデッドの未来」という講演を聞いてきた。 組み込みの未来はユビキタスで、ユビキタスはインフラだそうだ。 ユビキタスの実践として色々実験的な試みをしているそうだ、トヨタと一緒に電脳住宅Ver2も作ったそう…