ページ

2013年8月27日火曜日

VPNの構築方法いろいろあるけれども

VPN構築

VPNの構築いろいろあるようです。

一般的には,
「ルータなどで拠点を結ぶのであればIPSec」,
「クライアントからサーバへの接続を提供したいのであればPPTP」,
「UNIXで簡単に暗号化したいのであればSSHフォワード」という選択肢になるようです。

VPNサーバーの設定
参考URL
1.PPTPでの方法

  (1)PPTP-1
   この方法は、LINUXのカーネルにパッチを入れるやり方でかなり古いLINUXサーバー向けです。

  (2)PPTP-2
   Linux用のPPTPサーバデーモンソフトとして「PopTop」を使用します。
   Windowsでは,PPTP接続を行うための手段が「仮想プライベートネットワーク」 
     --> 「MS-CHAPv2」を選択すれば可能です。

    (3)Windows7
    (2013年8月現在)今では、これが最も簡単です。Windows7が標準で実装してます。

   
2.IPsec

  LINUXにIPsec(L2TPD)をインストールしてVPNサーバーを構築できます。

3.SSL  

  LINUXにOpenVPN
  業界標準のSSL/TLSプロトコルを利用しているそうです。
  でもかなり面倒そうです。

 1-(3)が今や最も簡単です。技術の進歩はすごいものです。
 その場合でも、クライアントの設定で少しはまるポイントがありますので、書いておきます。

クライアントの設定
 Windows-XPの場合
 このURLにWindows-XPでの設定方法がかかれてますのでご参照ください。
ただ、ここであて先のホスト名またはIPアドレスとなっている部分、IPアドレスそのままを入力してもいいと思われますが、固定IPでない場合は、ダイナミックドメインサービス等で得ているドメイン名のみをいれます。ホストコンピュータ名は、エラーなく接続した後であれば、ネットワークで検索すれば出てきます。

 iPhoneの場合
   このURLを参照してください。 
iPhoneもVPNを活用でsきます。
この場合もサーバ設定の部分はIPアドレスでもいいですが、固定IPでない場合はドメイン名のみとなります。



2013年8月26日月曜日

プリンターの印刷が止まらない時の対処方法

プリンターで大量印刷した場合によくおきるのですが、プリンターの印刷が途中でエラーが発生して何回も印刷を最初から繰り返す場合があります。こうなると大変です。PCを再起動しても止まらないし、プリンターを再起動してもだめです。PCのスプーラーが記憶してしまっていて何回も最初から印刷を繰り返します。インクと紙がいくらあっても足りません。

そういう時の対処方法です。 
ネットで探すといくらでも出てきますが、再度整理しておきます。

タスクマネージャを起動します。
  spoolsv.exeをプロセス終了します。

 Windowsのシステムディレクトリにスプールフォルダを空にする。
  「C:\WINDOWS\system32\spool\PRINTERS」というディレクトリの中のファイルを削除します。

再起動する。
  再起動すると、プリンタのスプールが空っぽになっています。



2013年8月21日水曜日

FPGA(xilinx) verilogでXSTにブロックRAMを推論させる




 去年の暮れからFPGAをverilogで設計するという仕事に没頭しておりました。FPGAは、Xilinxから発表された当時(30年くらい前?)、新しいもの好きの私は、その頃高価なFPGAでトリプルポートのDRAMコントローラを画像処理用に作りました。ASICで作るよりは、FPGAで作るほうが、問題が起きた時に変更できるという利点もありましたが、高価でしたし、ゲート規模もPLDのお化けというような感じでたいしたものではなかったですが、結構設計に苦労しました。その当時まだ、論理合成なんていう便利なツールはなかったので、回路図レベルでまず設計しそれをFPGAエディターにCLBの中身を展開していくというなんとも大胆な方法で設計したものです。

 回路図をのままを設計ツールで論理合成した場合、その当時のパソコン(486レベル?)では、丸1日かかるというもので、使い物にならないというのがその理由でした。それからFPGAの設計からしばらく離れておりました。

 2012年は、verilogでの本格的な設計をはじめるきっかけとなりました。結構大規模なFPGA(xilinx)の設計で、spartan6のお世話になりました。技術の進歩は、すごいものです。しばらくFPGAから離れていただけで、タイムマシンで未来に来たかのごとく論理合成の時代は進歩していました。
 
  いろいろはまるところがありましたが、今回最も冷や汗を掻いたところは、最終段シミュレーションも大体終わり、論理合成、配置配線をしようとした時にデバイスに入りきらないというエラーが出たときです。もうボードの実装も上がり、デバイスの変更はできない状態でした。最初の想定では、デバイスの選定は問題ないはずですが、何回条件をいろいろ変えてもできなくて、悩んだのですが、聞いてみるとブロックRAMを想定して設計している部分を、論理合成ツールがブロックRAMと認識せずにCLBでRAMを構成してしまっていた事が原因でした。

 論理合成・配置配線で問題が出た場合は、ISEですと xxx.par とxxx.syr を、Planaheadですと xxx.srp とxxx.mrp を見て期待通りにブロックRAMを使って論理合成できているかを確認できます。期待するブロックRAMでできていない場合は、シュミレーションでは、動作するのですが、ブロックRAMとして認識できないような何らかの問題がRAM部の記述にあります。

 下記がブロックRAMの基本構造です。ブロックRAMの基本的な構造を理解する事で、この範囲を超えずに記述すればXSTは、ブロックRAMとして推論してくれます。完全な非同期のデュアルポートRAMを構成できます。IPブロックとして記述する方法もありますが、verilogで推論させたほうがスマートです。
心配であればコーディング途中で一度論理合成を走らせる事をお勧めします。後になって冷や汗を掻くよりは、事前にリスクを回避できれば、デバッグの効率もアップします。間違った記述でロジックを書き進めてしまってからでは、後の変更がたいへんですし、時間の浪費です。




































 どうしてもだめな場合は、(* RAM_STYLE="BLOCK" *)制約を追加する事で推論できるようになる可能性があります。基本的に上記ブロック構造を守っていればどんな複雑なロジックにしてもXSTは、ちゃんとブロックRAMとして推論してくれます。

 あたりまえのことですが、1つのデータポートにアクセスできるアドレスは1つです。この理解さえできていればブロックRAMは、攻略できます。

 XSTがブロックRAMとして推論しない認識しないと困られている皆様がんばってください。幸運を祈ります。

DOSブート USB-flashメモリーのつくり方

 フロッピーというメディアが世の中のパソコンからなくなってもうずいぶん経ちます。でもいまだにDOSブートは、必要です。仕事柄、最近は、もうインテル系の仕事も少なくなり、WindowsとかLinuxとかiOSとかしか使う機会がなくなってきてますので、DOSブートの方法を聞かれても思い出すのに一苦労です。なので、ここに備忘録として書いておきます。今日もユーザーから問い合わせがあって思い出すのに半日を費やしてしまいました。

フロッピーがあるパソコンでは、DOSブートフロッピーでDOS起動が従来通り起動できますが、フロッピードライブのついているパソコン自体を今ではほとんど見かけません。メディアも売ってません。ですので、現在はDOSブートは一般的には、USB-FLASHメモリーをDOS起動用に初期化して使います。 ネットには、この手のUSBメモリーのフォーマット情報たくさんありますので、いろいろ参考になるところを上げておきます。

・Windows98 でフォーマット
  2000/XP以降は、USBメモリーのフォーマットはできないようです。なので特にここでは、書きません。

 
HP USB Disk Storage Format Tool
  左は、HP社が提供する無償のツールです。 これでUSBメモリーをフォーマットするとDOSbootできるUSBメモリーができます。

dosブート usbメモリ
  他にもいろいろツールはあるようです。上記URLのツールでも可能です。




  
ただどの方法でも、USBメモリーを選ぶようで、あまり安いUSBFLASHメモリーを使うとブートできないという不具合に何回か見舞われました。通常のストレージで使う分には、全く問題ないのですが、ブートデバイスで使うとなると、使えないものがありました。(メーカー名はここでは、公表しません。)ですので、これで1回ブートに失敗してもあきらめないで、デバイスを変えてやれば成功します。

2013年8月20日火曜日

CPU付きのXbee はまってしまった落とし穴

Xbee(zigbee):特にProgrammable XBee-PRO ZBについてお困りのかたのために役にたつサイト、情報を整理しました。

 XBee(ZigBee)を今回のターゲットシステムで使用しました。非常によくできていているのですが、最初はきっとはまります。特に何か少しターゲットでCPUを使ってアプリを作りたいという場合は、これを使うと便利なのですが、全くといっていいくらい関連書籍とかネットにも情報がないので、はまります。同じような事でお悩みの方のために今回はまってしまった事項を整理します。基本的な事項はいろいろなサイトで説明されているので、省略します。

XBee-PRO ZB Extended-Range Programmable S2Bモジュール(PCBアンテナ)
余談ですが、このモジュール遠くから見るとなぜかどうもゴキブリのような気がするのは私だけでしょうか?

 まず最初の失敗は発注型番ミスです。XBee種類が多いです。CPU付のXBeeを使用予定でしたが、型番がよくわからず代理店に問い合わせて発注したのですが、その型番が間違ってました。

 基本的には、シリーズ1と2がありますが、各々出力レベルの違いでPRO版と通常版がわかれております。CPU付(Programmable)は、シリーズ2にしかなく、S2Bというものがありますが、これとCPU付(Programmable)とは、違うようですが、ただCPU付は、シリーズ2のPRO版(S2B)しかないようです。Programmable XBee-PRO ZB というのが、CPU付のXbeeの正式名称のようです。Xbeeの型番を検索するのは、このサイト(秋月)が最もわかり安いです。サポートいらないという自身のある方は、代理店から購入するよりもここからネット購入するのがいいかもしれません。

 内蔵CPUは、FreescaleのMC9S08QE32で低消費電力が売りのようです。H08コアと書いてあるのでARMでもないようです。その次に悩んだのがその構造でした。CPU付とCPU無しで全くPin番コンパチです。DIOとかUARTとかADCの入力ポートとかがついています。回路図がついているのですが、ものすごくシンプルなもので、きっと省略してるものと思い込んでいました。DIO等の信号を選択するためのスイッチ素子がついているものと思っており、いろいろ質問した結果そうではなく、ただ回路図のとおりワイヤードオアされているだけのものであるとわかりました。ですので、たとえば同一pinのDIOでリソースが2つある事になります。従来のXbee-radio部が持つIOリソースとCPUのIOリソースの2つです。これは、スイッチ素子でセレクトされません。間違って両方出力でイネーブルにconfigrationすると出力がぶつかる事になりますので、気をつけてください。

 なので、 Programmable XBee-PRO ZBの開発ツールには、configrationする部分が2つあります。1つは、ファームのconfig XCTUというツールを使ってXbbeのradio部のファームを読んだり書いたり設定できるところ、もう1つは、CPUのアプリ開発用のツールCodeWarriorには、config.xmlでCPUのIOリソースのconfigを設定できる部分があります。これを理解しておくと後の開発debugに役に立ちます。特にファームのDIOをPull-upする設定もありますが、このDIO部分と同一のアナログ入力をCPUで使う場合、ファームでDIO-Pull-upをイネーブルにするとアナログ電圧値に影響がありますので、要注意です。

 CPUのアプリ開発用のツールCodeWarriorには、まだまだBUGがあるようです。特にUART部分は、注意です。サンプルどおりに書いても動作しません。SDKに細工が必要なようです。代理店からもらったサンプルソースが全く動作せずに困り果てた末に得た回答は、SDKの修正が必要との事でこれだけでも1人月くらいの工数を浪費しました。試行錯誤の連続でした。アプリの書き込みボーレートはデフォルトの115200bpsのみでしかうまく動作しませんでした。radio部の通信レートも115200のほうがいいです。外部を9600bpsで動作させたい場合、CPUを使用する場合あえて同一レートにする必要もありません。CPUでアプリを作りさえすれば、どのようにでもできますので、今回のシステムでは、外部9600bpsで動かし、内部無線部は、115200bpsで構成しました。

 今回感じたことは、とにかくあきらめず、しつこく、試行錯誤の繰り返しで、いろいろ実際のボードでまず試して見ることが大事です。どうしてもだめな部分は、回避する事を考えるべきです。開発用ツールCodeWarriorには、膨大なサンプルソースがありますので、これを利用する事をまず考えるべきです。Programmable XBee-PRO ZB 非常によくできております。XBee単体での使用が最もシンプルですが、CPU付をお考えの方ぜひチャレンジしてください。外付けCPUをわざわざつける事もなく結構便利なアプリが構築できます。

2013年6月10日月曜日

太陽光発電

シャープの太陽光発電をつけてから3年目に入りましたが、現在、コンソールにエラーメッセージがでて稼働していません。もうダウンしてから2ヶ月ちかく経過してますが、未だに復旧してません。

  まずは、メッセージどおりにシャープさんのメンテナンスに電話して来てもらったのですが、データを調査中との事で1週間以上経過しても、回答を得られず放置状態でした。セキスイハイムで家を建てたときに設置しましたので、セキスイハイムの営業の方にもプッシュをしてもらって、やっとの事で、さすがにメーカーさんパワーコンディショナーを交換していただいたようです。が、しかし、その甲斐もなく再びダウン。再度メンテナンスさんに来てもらうことになりましたが、ブレーカーが過電圧で切れてるとの事でした。 「太陽発電の逆潮流が、電圧を上げてるんですかね?」と聞いたんですが、そんな事はないですよとシャープメンテナンスさん。「今度切れたら、関西電力に言ってください」との事で帰られました。
 案の定、翌日またブレーカー過電圧でぶち切れましたので、即、関西電力に電話すると電圧モニターする装置を入れて1週間くらいデータを取りますとの事。ええかげんにしてくれといいたいですが、その後も、ブレーカをONしてもすぐにぶち切れるいう困った状態が続きました。


  関西電力で電圧モニターを1週間してもらった結果、全く異常値は検出されておりませんとの回答、瞬間電圧をピークホールドするようで、max106.2Vでしたとの事です。だとすると悪いのは、ブレーカー???それともパワーコンディショナー???どう考えても、ブレーカーが悪いって事はないですよね。ってことで、またシャープさんに電話して相談しました。ですが、メーカーとしては、交換もしているので、これ以上の事はできないとの事、確かにそうです。

  最近のネットは便利です。とあるサイトから情報をいただきました。「中性線欠相」というキーワードがあります。という事でした。可能性としては、後はブレーカか配線という事で、工事はハウスメーカー(セキスイハイム)が依頼した電機屋さんが実施しておりますので、ハイムのメンテナンスのかたに来ていただき診てもらった結果、なんと「漏電してる」という事実が判明。しかし今まで動作していてここに来て漏電という事があり得るのかと思いますが、未だに太陽光発電はダウン状態。まさか配線が、、、これはノーマークでした。

  やっとの事で、ハウスメーカーのメンテナンスの方が、来てくれて配線を交換、原因は、配線が金属部分に接触している部分があり、それが、時間の経過とともに漏電につながったと、さも納得できそうな答を置いていってくれたのはいいのですが、なんとまたその日のうちに同じ現象が再現、ブレーカーがぶち切れました。何がどうなってそうなるのか興味深深です。

  あとは、ブレーカ しかないのですが、ハウスメーカーさん次の日ブレーカを交換してくれました。
けれども次の日は曇り、こういう日は、調子よく動作します。梅雨ですので、しばらく天候が悪い日が続きます。ブレーカ交換で本当に完治したのかどうか、まだ結論はでないです。

  果たして、こういう対処療法でいいのでしょうか?根本原因を徹底究明する必要があります。今度また、こういう状態が続いても続かなくても少し原因を究明しようと思ってます。

☆ ひょっとしてシャープさんはなんの責任もないかもしれません。
 御免なさい。<(_ _)><(_ _)><(_ _)>
 暴言を吐いてしましました事お許しください。
 パワーコンディショナー交換ありがとうございます。

 今年の気候がよく太陽発電のピーク時に全く発電できなかった事がたいへん悲しいです。まだ本当に完治したかは、疑わしいばかりです。しかも電気代が上がってますので、益々経済大ピンチ!!

 どこに言っていいかわからない状態はとりあえず脱しましたが、いつまで続くこの状態。

 とりあえず、今の状況をUpしておきますが、こういう事にはまっている人結構最近多いような気がします(ネットでもよくこの手の話が話題になってます)ので、この件、徹底的にレポートします。

2013年5月22日水曜日

NE555(555)をワンショットで使うときの注意、、 今更。備忘録。

知り合いから簡単なタイミング回路設計を頼まれたので、何十年ぶり?にNE555(タイマIC)を使って回路図を書きました。実際のものに使った事はないと記憶してますが、このIC便利なので何かの実験等でよく使った記憶がありますが、何せ昔の事なので、、、、
やってしまいました。設計ミスというやつを

NE555(LMC555)は、タイマーにもワンショット回路にも使えるので、大昔から教科書にも多分載ってて今でもまだ現役で使われてる貴重なICです。
でもこれをワンショットで、使うときは、気をつけてください。
LMC555 NSのデータシート

知ってる人は、知ってます。何を今更と言われそうですが。
   私の備忘録という意味でのブログです。

555 ワンショット回路で使うときのトリガ信号は、出力信号より短い必要があります。

入力信号の立下りエッジで開始のように書かれてますが、実はレベルで効いています。
しれっとわけのわからない日本語訳で、「トリガパルスは、Thより短く」と書かれてます。

これの対策としてやってしまった人は、
(555 ワンショット動作しないという人は、これです。)
1.エッジだけで使いたい場合は、微分回路をCRで作る。
2.やはりワンショットは、123を使いましょう。これが一番使いやすいです。
     HC123 CD4047 が使えるようです。

参考 

という事で、XXさんごめんなさい。
昔も同じような事をやってしまったような記憶があります。