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

2015年2月25日 (水)

「理想のポタ赤を作る」あるものとは

業者に、明日何が何でもとりに行くと連絡したところ、またまたのらりくらり。待ってくれと、私も疲れたので、もうこの話はやめますが、ただ裏を返せば、やる気はあるんだということが分かったので、好意的に捉えることにします。ここは辛抱。

さて、先日予告したあるものとは、これ。

1502251

電子極軸望遠鏡です。

ポタ赤使ってて、一番面倒なのは、極軸合わせと構図合わせ。どちらも、小さいほど面倒なんです。これらは、大きい赤道儀ほど楽です。実際使っている人なら分かると思います。小さなポタ赤に300mmレンズつけて、構図合わせなんて、ほんと、我慢比べですよ。もう最後には、いぇ、これでいいいや。と投げやりに。

構図合わせの面倒さは、「理想のポタ赤」ではステップ微動や、自動導入が使えるのでこれで解消です。ところが極軸合わせの面倒さはまだ残ります。そこで、これを解消したのが電子極軸望遠鏡です。

2.4インチタッチパネルLCD、CMOSセンサー、GPSセンサー、方位センサー、傾斜センサー搭載の優れもの。だれでも短時間で、しかも正確に極軸を合わせられます。

これが導入画面。

1502252
拡大画面。

1502253
時角計算不要です。GPSデータから自動で北極星の位置を計算します。

1502254

これは、方位、傾斜センサー画面です。これらのセンサーにより、北極星を覗き込まなくて導入できます。もう覗く必要はありません。

画質調整画面。

1502255


1502256_2
そして、これがセンター出し画面。極軸望遠鏡のセンター出し。つまりレチクル中心の赤経軸の回転軸を一致させる、あの面倒な作業です。この画面を使えば、タッチパネル上で行えます。1分もあればできてしまいます。

1502257
そして、最後に地点登録画面。良く行く遠征地の地点登録をしておくと、その場所での方位センサー、傾斜センサーの値を覚えています。そうすると、次回からはセンサーによる北極星の導入が正確になります。8箇所まで登録できます。

ケースはこんな感じです。

1502258

こんなものを「理想のポタ赤」につけると、さらに値段が高くなるのでは、と心配するかもしれませんが、大丈夫です。今のところ、光学式極軸望遠鏡と同じくらいのコストで製作するつもりです。もちろん、光学式極軸望遠鏡の方がいいという人にはその選択肢も残してはおきますが、

ただ残念なことにポタ赤リリースには、間に合いません。早くても4ヶ月はかかると思います。ですから、最初は光学式極軸望遠鏡をつけますので、あとから交換ということになりそうです。

この電子極軸望遠鏡ですが、赤道儀の取り付けネジがM27となってますので、GPシリーズの赤道儀にも付けられます。これ単体の販売も予定しています。

この電子極軸望遠鏡の唯一の欠点といえば、邪魔なこと。一応簡単に脱着できるようにしておきます。その都度脱着すると光軸がずれるのでは、と心配するかも知れませんが、そうはずれないと思ってます。気になるなら、便利なセンター出し機能もあるし、付けっぱなしにしておくかですね。

これほんと便利ですよ。一度使うと、もうやめられなくなります。

| | コメント (20)

2015年2月24日 (火)

「理想のポタ赤を作る」安いのには訳がある

昨日試作機ができる予定だったので、今日仕事が終わった後にとりに行ったのですが、まだできていないとのこと。。。

少量生産だからしょうがないが、のらりくらり納期を伸ばされます。まだやってくれるだけマシですが、安いのでこの業者に頼みましたが、対応は悪いです。

どうもこの業界の人と話してると疲れます。この業界の仲間に聞くと、「もう慣れた」といいます。私は慣れません。

まぁ、納期は数日延びただけのことのなので、私も目くじら立てることもないのですが、今度木曜に取りにいきますが、未完成でも回収してきます。ですから週末では何か出せると思います。

価格を気にしてる方が多くなってきました。まことにすみません。20万円超えます。安い業者に頼んでもこの値段です。結局安くするにはたくさんつくるしかないのですね。

価格はどうにもならないので、後は付加価値を高くするしかありません。今、あるものを作っているのですが、それを標準装備できれば、付加価値も高まります。近日中には詳細を書きます。

| | コメント (10)

2015年2月17日 (火)

「誰でもわかるマイコン入門」文字列の切り分け

さて、前回はGPSから文字列データを受信して表示するところまでできました。

今日はこのデータを解析します。GPSモジュールから送られてくる文字列データは一般に、NMEAフォーマットです。このフォーマットの詳しい解説は

http://www.hiramine.com/physicalcomputing/general/gps_nmeaformat.html

などを参照してください。この文字列フォーマットを解析する便利なライブラリはたくさん出回っているのですが、いつも人さまの部品を利用していては勉強にならないので、今回は自前で作ってみます。

というのは、文字列の解析というのはプログラミングの基本中の基本です。これをマスターしないとプログラミングを勉強したことになりません。

それでは始めましょう。

まず、前回までにGpsInputという配列にNMEAフォーマットの文字列を格納しました。NMEAフォーマットはいくつかのパターンがあるのですが、先頭が$GPRMCというものだけを抽出すれば、日時、時刻、経度、緯度のすべてのデータが得られます。

そこで文字列の先頭6文字を比較して、それが$GPRMACに等しいときだけ、処理をするようにします。その時使う便利な命令が

strcmp(A, B)

これは文字列AとBを比較して等しいなら0の値を持ちます。このように値を持つ命令を関数と呼びます。ただし、例外的に値を持たない関数も存在します。

さて、この比較関数ですが、これは文字列全部を比較します。先頭のn文字だけ比較するには次の関数を使います。

strncmp(A, B, n)

したがって、先頭が$GPRMCに等しい場合だけ処理させるには、次のように記述します。

if (strncmp(GpsInput, "$GPRMC, 6) == 0) {

  ここに処理を書く

}

さて、これで$GPRMCだけ抽出することができます。$GPRMCのデータフォーマットを見るとデータがカンマ(,)で区切られていることがわかります。

したがって、次の課題は、このカンマで区切れた文字列を小分けにして、次の10個の配列に収めることです。

            char item1[20];
            char item2[20];
            char item3[20];
            char item4[20];
            char item5[20];
            char item6[20];
            char item7[20];
            char item8[20];
            char item9[20];
            char item10[20];

1502171ちょっと難しい話が続くので今日はここまで。

| | コメント (0)

2015年2月 9日 (月)

「誰でもわかるマイコン入門」GPSを付ける

前回までにグラフィック液晶を付けました。これだけでは面白くないので、今日はGPSモジュールを付けてみましょう。

使ったGPSモジュールは、またまたアイテンドーで、これ

http://www.aitendo.com/product/1007

早速、マイコンとつなげてみますが、ここでワンポイント知識。GPSモジュールはシリアル通信で通信します。パソコンなどのRS232Cと同じです。ただパソコンのRS232Cは電圧を上げていますが、これは3.3Vのままです。あまり距離を長くできません。また電圧が低い場合はRS232Cとは言いませんが、規格自体はRS232Cと同じです。

RS232Cは、送信(TX)と受信(RX)の2本の信号線で通信します。あとGNDを入れて計3本です。ただGPSモジュールは一方的にデータを送ってくるので、GPSモジュールか見て送信(TX)、(マイコン側から見れば受信(RX))の一本の線をつなげばOKです。それに電源が2本なので、計3本の配線が必要です。

それでは配線しましょう。こんな感じ。

1502091
手前黒い線がGND、赤い線が3.3V、青い線が(GPSから見れば)送信(TX)です。青い線はマイコンのP27につなぎます。

1502092

また、GPSモジュールの裏側はこのように配線してください。

1502093
配線がすんだら、プログラムです。プログラムは前回の液晶のデモプログラムを改造する形で行います。demo.cppをいったん白紙にし、次のようなプログラムを記述します。

-----------------------------------------------------------
#include "mbed.h"
#include "ILI9340_Driver.h"

Serial gps(p28, p27);

int main() {

    // create the display object
    ILI9340_Display tft = ILI9340_Display(p5, p6, p7, p24, p25, p26);

    // initialise the display
    tft.DispInit();
   
    gps.baud(4800);
    char GpsInput[256];

    while (1) {
        gps.gets(GpsInput, 255);
        tft.FillScreen(ILI9340_WHITE);
        tft.DrawString(GpsInput, 0, 100, 1, ILI9340_BLUE);
    }
}
------------------------------------------------------------

液晶以外の部分だけ説明しましょう。

Serial gps(p28, p27);
p28、p27をシリアル通信で使う。名前をgpsと名づける。p28は実際には使いません。また順番に注意してください。gps(p27, p28)と書いたらだめです。

gps.baud(4800);
シリアル通信のボーレートを4800に設定しています。

char GpsInput[256];
前回、変数というものを説明しました。これは連続した番地をもつ256個の変数を定義しています。配列といいます。文字列(文字の並び)を格納するために使われます。文字列は最後のデータが0でないといけないので、それを除外して255文字ま格納できます。

gps.gets(GpsInput, 255);
GPSから送られてくる文字列のデータを受信します。255というのは最大255文字です。受信した文字列は先ほどの配列に格納します。

tft.FillScreen(ILI9340_WHITE);
液晶に文字列を表示する前に、前の文字列をクリアするため、いったん全画面を白に塗りつぶします。

tft.DrawString(GpsInput, 0, 100, 1, ILI9340_BLUE);
受信した文字列を液晶に表示します。

さて、このプログラムをコンパイルして実行すると、液晶にチカチカ文字を表示されます。こうなれば正常です。

1502094
まだ、この文字列はなんのことかわかりませんね。次回はこの文字列を解析して、日付、時間、北緯、経度などを表示させてみます。それでは。

| | コメント (0)

2015年2月 2日 (月)

「誰でもわかるマイコン入門」グラフィックLCDを付ける

今日から、応用編です。

そろそろ何か表示器を付けたくなってきました。そこで、TFTカラーグラフィックLCDを付けてみます。

これです。2.2インチの小さいやつ。

1502021
買ったのは、アイテンドーというところ。

http://www.aitendo.com/product/7277

今日現在、在庫14個しかありません。早めに買っておいた方がいいかも。もしなくなったら、私がまとめて中国から購入しておきますので、コメント欄から問い合わせてみてください。

さて、早速、配線です。数が多いので、ちょっと大変ですが、間違わないように。結線表を書いておきます。

mbed---LCD
-----------------
GND --- GND
P5 --- SDI/MOSI
P6 --- SDO/MISO
P7 --- SCK
VOUT --- LED and VCC
P26 --- DC/RS
P25 --- RESET
P24 --- CS

1502022
それから、LCDの基板の裏側J1と書かれた部分(写真の青丸)を半田をもってショートさせてください。

1502023
これで完成です。

次に、プログラムですが、本来ならグラフィックLCDのプログラムは大変なのですが、ここがmbedの良いところ、他人のプログラムを簡単に拝借できちゃいます。

この方のプログラムを頂きます。

1502024
http://developer.mbed.org/users/dextorslabs/code/ILI9340_Driver/

画面右上の[Import Program]をクリックすれば、自分のページに取り込みます。取り込んだら、Demo.cppを開いてください。これがプログラムの一部です。

コンパイルして、mbedに保存し、リセットすれば動きまっす。簡単!!

1502025
さて、これを利用していろいろ作ってみましょう。

| | コメント (0)

2015年2月 1日 (日)

「理想のポタ赤を作る」コマンドリファレンス完成

「理想のポタ赤」来週あたりに試作機があがってきます。ようやっと形になってきました。これで問題なければ予定通り3月中にはリリースできそうです。試作機があがって、ひととうり検証したあと、金額とか詳細を発表したいと思います。もうしばらくお待ちを。

あと、コントローラ単体販売ですが、GP赤道儀用のモーター取り付け金具を業者に発注しました。これも3月には間に合うかな? モーターなし版も同じ時期に販売します。

あと、プログラム撮影のコマンドリファレンスができました。これを見れば何ができるか、だいたいわかると思います。
星景写真にも対応しました。追尾撮影と固定撮影の合成撮影もずれることなく実現できます。詳しくはリファレンスを見てください。

「SS1_command.pdf」をダウンロード

1502011

1502012

1502014

| | コメント (15)

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