2009年12月11日

息子の教育のためにレーザープリンタを購入

今年、息子の教育のためにNZ$112(当時のレートで約6000円)でレーザープリンタを購入しました。日本で同じ物を買う場合と比較して、実質半額以下で購入しています。
【送料無料】在庫あり 翌営業日出荷A4レーザープリンタ JUSTIO HL-2140


ニュージーランドドルが高いときに仕入れた在庫を大手販売店各社が早く処分したいのでしょう。新品のレーザープリンタを6千円で手に入れた計算になります。

突然ですが、価格.COMってご存知ですか?

いろいろな商品の最安情報を掲載しているサイトです。
http://kakaku.com/

そして・・・ニュージーランドにも似たようなサービスを行っているサイトがあります。価格.COMと比べると無愛想なサイトですが・・・
http://pricespy.co.nz/

一応、ニュージーランド版の価格.COMみたいな物です。

これらの両サイトで、前述のレーザープリンタの価格を調査してみてください。プリンタ以外にもニュージーランドのほうが安いものがチラホラあります。為替が急激に動く昨今は、こういうことが頻繁に起こります。
posted by love4nature at 01:00| Comment(0) | TrackBack(0) | 雑記 | このブログの読者になる | 更新情報をチェックする

2009年12月09日

幼稚園(プリスクール)入学。もうすぐ1年

今年1月から息子を幼稚園に入れてます。もうすぐ1年です。

順番待ちでなかなか入れないと聞いていたので、入園半年前から予約していました。私たちが選んだのは、2歳からしか入れない私立の幼稚園です。

見学に行って、息子に合っているような気がしたので、即決でした。

週に3日間預けています。私が送り迎えを担当しています。4回目まで別れるときに大泣きでしたが、5回目には慣れたようで、今では楽しくて仕方が無いようです。先日、この幼稚園で「シラミ」が発生したという情報が入ってきました。

「シラミ」ですよ。日本の幼稚園ではどうなんでしょうか?
ニュージーランドでは、よくある話だそうです。3人に感染したとのこと、その日は行っていませんので幸い息子は「シラミ」を持ち帰りませんでした。恐ろしや〜です。

息子が通うこの幼稚園は、モンテッソーリ教育
を看板にしています。

私の教育綱領は「早期自立」←常識にとらわれず自分の頭で物事を考えることを経て、自分と他者を尊重できる人になってもらいたいと考えています。

幼稚園見学に行ったときに目に入った、多くの木製玩具、屋外には釘と金槌が普通においており、モンテッソーリ教育の子供の知的好奇心、自主性、独立心を伸ばすことに重きを置く姿勢に共感しました。
posted by love4nature at 01:00| Comment(0) | TrackBack(0) | 子育て日記 | このブログの読者になる | 更新情報をチェックする

2009年12月06日

トイレトレーニング

我が家では、子供が生まれる前から、正確には妻が妊娠する前から基本的に布オムツを使うことを決めていました。理由は、子供のトイレに関する早期自立のためになるべく使わないようにしたいと決めていたためです。

紙オムツが実は、ほとんど紙ではないことを知っていたことと、環境負荷が高いことなども理由です。

妻は妊娠する前から、日本に帰国した際に布オムツやオムツカバーを買い込んでいました。なぜ、わざわざ日本からかといいますと、ニュージーランドの布オムツは、単なる布で私たちにとっては扱いにくい代物でした。

日本製とNZ製の両者を見比べて「やはり日本の物づくりはすごいなぁ〜」と当時は話していました。

幼児のトイレに関する早期自立のためになぜ布オムツが良いかですが、もし紙おむつをしていたら、親としては子供のうんちやおしっこの処理を機械的にやってしまいがちです。

トイレトレーニングの一環で我が家では、なるべく布オムツにすることによって、布オムツを洗っているところや、その他の後始末をしているところを息子に見せるようにしました。

また、息子に「おしっこやうんちをトイレでできるようになると、後始末の時間がなくなるから、一緒に遊ぶ時間を増やせるよ。」とたびたび話しました。後始末をするときにイライラせずに怒らずにが大切だと思います。

子供自らが、おしっこやうんちをトイレでしたいと思い努力していくように仕向けるのです。息子の場合は、彼の努力が実り、成功だったと考えています。
ラベル:教育
posted by love4nature at 01:00| Comment(0) | TrackBack(0) | 子育て日記 | このブログの読者になる | 更新情報をチェックする

2009年12月05日

WOLのルーター越え。おまけの解決方法

WOLマジックパケットのルーター越えを可能にする3つの方法の続き、おまけの4つめ

4)ルーターのARPテーブルが、PCの電源が切れていても変更または消去されないような設定を行う。(可能であれば)
この方法は、ルーターの仕様に大きく依存します。ルーターがWOL未対応で、設定で対応させることもできない場合のおまけとしての対処法です。あまりお勧めではありません。

理由は、機能的に可能であってもルーターの機種によって設定方法が大きく変わってくるところや、新たな端末追加の際に設定がずれてしまう恐れがあることなどです。

実際の設定はルーターによって大きく異なりますので、ここでは概念だけを紹介します。

本来、マジックパケットはブロードキャストアドレス(例、192.168.1.255)宛てに送信されますので、例えばあなたのうちのパソコンのIPアドレスが、192.168.1.100/24だとすると、マジックパケットは、192.168.1.***、同一ネットワークのすべての端末に送信されます。

マジックパケットの中身は、大まかに言えば電源を入れたいパソコンのMACアドレスが16回連続している内容です。

各端末のネットワークカードが、届いたマジックパケットの中身の電源オン対象MACアドレスと自身のMACアドレスを照合するわけです。一致で電源オンです。

マジックパケットのルーター越えにおいて、ルーターでの障害とはブロードキャストアドレス宛てにポートフォワーディングが許可されていないことです。

あらかじめ、電源オン対象のパソコンのIPアドレスが固定されている場合、そのパソコンに直接ポートフォワーディングの設定を施すことで、マジックパケットをピンポイントで送信させることが可能な場合があるのです。

ここでの条件が、前述の「ルーターのARPテーブルが、PCの電源が切れていても変更されない及び、長時間消去されない」ことです。

ARPテーブルというのは、マジックパケットの送信に必要なMACアドレスとネットワーク内PCのIPアドレスの対照表です。つまり、MACアドレスとネットワーク内のIPアドレスの対応が消えたり、ずれたりしなければ、ルーターはピンポイントでマジックパケットを転送してくれるのです。

実際の設定は、ルータにより異なりますが、DHCPの設定をいじったりして試してみてください。できるかもしれません。

パソコンがWOL対応でマジックパケットが届きさえすれば、電源は入るので目的は達成されることになります。実は、
arduino WOL Repeaterを作る前は、職場でこの方法を使っていました。ちょっと不具合が出てしまったので「arduino+ethernet shield」にしました。

パソコン、ルーター共にWOL対応であっても不安定なときはあります。長期間旅行で自宅に戻らないときに、一度でもこの不安定があると、以降は遠隔操作ができないことになります。これでは、人の心も不安定になりますね。

心から安心を得たければ、「arduino+ethernet
shield」で簡単に実現できる「WOL Repeater & Switcher」が解決してくれます。

長期間外出のときだけ、これを使うという手もありますね。そしたら、普段は
「arduino+ethernet shield」を他のことに使えます。
posted by love4nature at 01:00| Comment(1) | TrackBack(0) | 趣味の部屋 | このブログの読者になる | 更新情報をチェックする

2009年12月03日

日本 VS ニュージーランド 公園比較話し

こちらはいよいよ夏です。なぜか寒い日が続いていますが・・・

息子が1歳のころ、夏の間は毎日のように息子を公園のプールにつれていきました。

誰でも無料で利用できるこのプールには、係員は常駐せず、公園の中に一遊具として存在しています。毎朝、市の職員が掃除しており、1日に数回、水質検査にも来ているようです。

私は、街中に点在する公園のことなど、息子が生まれるまでは、特に気にとめていませんでしたが、子供が出来ると頻繁に利用するようになりました。

日本では首都圏には、ニュージーランドの公園が貧相見えるほど立派な公園が点在していますね。一方、地方の公園は見るに耐えないものが多い。

役所からすると公園の整備は優先順位が低そうに見えます。そこに地域格差を露骨に見ることが出来ても不思議ではありませんね。

私は、日本人なのでどうしても日本との比較を無意識にしてしまいます。日本では、一部の公園でジャングルジムなどの「危険」とみなされた遊具が撤去されているそうです。また、一部の大人からは「危険だから、遊具を撤去しろ」などの要望があると聞きます。

ニュージーランドの公園には一見、危険に思える遊具が沢山あります。プールもその代表です。この国では当然ですが、必ずプールの横に「利用には自己責任」の文字があります。

前述の「危険だから、遊具を撤去しろ」という要望があることやその要望に応える行政がある話をキウイ(ニュージーランド人)にしたところニュージーランドではありえないという答えが返ってきました。

また、遊具で大怪我をした子供がいても、その遊具に不備がなければ撤去することにはならないそうです。その理由は、公園の使用者がリスクをとることが常識となっているからです。

一方、ニュージーランドにもおかしな話があります。数年前に聞いたのですが、強盗がある家に入ろうとしました。それに気がついて家主が、その強盗を殴りました。なんと、強盗は暴行を受けたとのことで家主を訴えました。詳しくは知りませんがこの裁判、強盗が勝ってしまったそうです。

いま世界では、この自己責任という言葉の適用範囲が曖昧であるめ、個人、会社、国家までもが、ダブルスタンダード状態で、一貫性がありませんね。子育てにおいて、一貫性はとても重要なキーワードだと思います。

「一貫性」とは、子供との信頼関係の維持・構築のために欠かせない親の態度なのです。
posted by love4nature at 01:00| Comment(0) | TrackBack(0) | 子育て日記 | このブログの読者になる | 更新情報をチェックする

2009年12月01日

生後4ヶ月の息子と私の気づき

まもなく4ヶ月になる息子のすくすく育つ姿に「人」という存在の不思議さを感じる毎日です。

人間以外の動物は、生まれてまもなく立ち上がったり、歩いたりします。

「人」だけが、ほかの動物と比べると異常なほど生後の自立が足りません。

いえ、まったくといっていいほど自立していません。なぜなのでしょうか・・・

こんなことを我が息子を見ながら考えてしまう私は、つくづく変なヤツだと思います。(苦笑)

なんとなく、無理やり私の結論を出したのですが・・・

人間は、知的生命体なので、ほかの動物との違いは、知性を持っていて心をもっていることでしょうか。

そのため、子の親にとって子供を育てることから何かを学び取ることで知的成長があり、

子供は親に育てられ、大きくなるにつれて、やはり知的成長がある。

つまり、親と子の関係は、知的にwin-winだと考えられます。

「人」は生後、心身共に自立するまで他の動物と比べて時間がかかる理由は、親子双方の「学び」のためなのかも知れません。
ラベル:気づき
posted by love4nature at 01:00| Comment(0) | TrackBack(0) | 子育て日記 | このブログの読者になる | 更新情報をチェックする

2009年11月30日

WOL未対応パソコンの電源をマジックパケットでオン解決編

※なんだかよく分からないけど、arduino WOLリピーターを作りたい方は、こちらの初心者用の説明をどうぞ

WOL未対応のパソコンでもマジックパケットで外部ネットワークから電源を入れる。「arduino+ethernet shield」なら簡単です。

必要なものは、「arduino」「イーサネット・シールド」小型リレーダイオード、半田と半田コテ、そして多少の線材です。

あと、必要に応じて、ブレッドボードなどです。

まずは回路図

WOL未対応のパソコンでもマジックパケットで外部ネットワークから電源オン

WOLrepSw.jpg実際は、こんな感じのたいへんシンプルなもの。
←クリックで拡大です。


使い方は、対象パソコンがWOLに対応している場合、たとえば自宅のPCから、職場のグローバルIPのポート7番にマジックパケットを飛ばします。この際、対象PCのMACアドレス宛てに送れば、「arduino Wake On LAN リピーター」として動作するので、問題なく対象PCの電源が入ります。

対象パソコンがWOLに対応していない場合、リレーの出力をマザーボード(実際の電源スイッチと並列につないでも可)につなぎます。これはWOL未対応でも直接電源ボタンを手で操作するのと同じ効果なので電源のオン/オフはもちろん、電源ボタン長押しによる強制切断にも対応します。

下記のスケッチ上の「Target PCのMAC addressをセット」の部分にWOL未対応PCのMACアドレスを入れてスケッチをarduinoに転送します。回路図通り接続が完了している事が前提で、WOL対応PCの場合と同じく外部ネットワークからマジックパケットを飛ばせばリレーが1秒オンになりPCの電源が入ります。

外部ネットワークからMACアドレスの1バイト目(一番左のバイト)を「FF」に変更してマジックパケットを飛ばせばリレーが10秒オンになり、PCの電源がオンであったなら、強制的に電源オフになります。

以下、スケッチ


// Wake On Lan リピーター (WOL未対応パソコン対応版)

// 遠隔でパソコンの電源ボタンを直接操作します

// 遠隔でパソコンの電源ボタン長押し(電源強制切断)にも対応


// http://yutakalife.net/article/134256657.html

// 販売などの商用利用はご遠慮ください
// Copyright love4nature All Rights Reserved.
#include <WString.h>
#include <Ethernet.h>
#include <UdpRaw.h>

byte TargetMac[] = { 0x00,0x00,0x00,0x00,0x00,0x00 }; // Target PCのMAC addressをセット

// イーサネットの設定
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; //MAC address
byte ip[] = { 192, 168, 1, 200 }; // Arduino のIP address
byte gw[] = { 192, 168, 1, 1 }; // Gateway IP address
int localPort = 7; //local port to listen on

// ターゲットのブロードキャストアドレスを指定
byte targetIp[] = { 192, 168, 1, 255};
int targetPort = 8000;

#define MAX_SIZE 192
// パケットサイズの最大値を設定
byte packetBuffer[MAX_SIZE]; // 受信パケット用バッファ
int packetSize; // 受信パケットのサイズが格納される
byte remoteIp[4]; // 送信元のIPアドレスを格納
unsigned int remotePort; // 送信元のポート番号を格納

int i;
int verification;

void setup() {
Ethernet.begin(mac,ip,gw);
UdpRaw.begin(localPort);
pinMode(2, OUTPUT); // 2番ピンを出力に設定
Serial.begin(9600);
}

void loop() {

// 受信データがあれば実行
if(UdpRaw.available()) {
packetSize = UdpRaw.readPacket(packetBuffer,MAX_SIZE,remoteIp,(uint16_t *)&remotePort);

Serial.print("Received packet of size ");
Serial.println(abs(packetSize));

Serial.print("From IP ");

for(i=0; i<3; i++) {
Serial.print(remoteIp[i],DEC);
Serial.print(".");
}
Serial.print(remoteIp[3],DEC);

Serial.print(" Port ");
Serial.println(remotePort);

if(packetSize < 0) {
// if return value <0 the packet was truncated to fit into our buffer
Serial.print("ERROR: Packet was truncated from ");
Serial.print(packetSize*-1);
Serial.print(" to ");
Serial.print(MAX_SIZE);
Serial.println(" bytes.");
}

Serial.println("Contents:");

for(i=0; i<min(MAX_SIZE,abs(packetSize)); i++) {
Serial.print(packetBuffer[i],HEX);
Serial.print(" ");
}
Serial.println("");

// Target PCのMAC当てMagicPacketを受信でリレーをオン
for(i=6; i<102; i++) {
int j = abs((102 - i) % 6 - 6);
if ( j == 6 ) j = 0;
if (TargetMac[j] == packetBuffer[i]) verification++;
if (j == 0) {
if(packetBuffer[i] == 0xFF) verification += 2;
}
}

// 受信したMagicPacketの宛先が、Target PCのMACアドレス1バイト目が0xFFで
// 他の5バイトが完全に一致ならリレーオン時間が10秒(パソコンの強制電源オフ)
if(verification>=112){
Serial.println("RELAY ON for 10000ms");
digitalWrite(2, HIGH); // リレーオン
delay(10000); // 10000ミリ秒待つ
digitalWrite(2, LOW);
}else{
// 受信したMagicPacketの宛先が、Target PCのMACアドレスと完全に一致なら
// リレーオン時間が1秒(パソコンの通常電源オフ/オン)
if(verification>=96){
Serial.println("RELAY ON for 1000ms");
digitalWrite(2, HIGH); // リレーオン
delay(1000); // 1000ミリ秒待つ
digitalWrite(2, LOW);
}
}

// マジックパケットを送信
UdpRaw.sendPacket(packetBuffer,packetSize,targetIp,targetPort);
Serial.println("Start port forwarding to broadcast address:");
for(i=0; i<3; i++) {
Serial.print(targetIp[i],DEC);
Serial.print(".");
}
Serial.print(targetIp[3],DEC);
Serial.println("");
Serial.println("Done!");
}
verification = 0;
//wait a bit
delay(10);
}

arduinoは、ピンのシンク、ソース電流ともに40mAまで流せます。秋月で購入のこの小型リレーなら25mA程度しか流れないので問題なし。回路がシンプルで済みます。
posted by love4nature at 01:00| Comment(0) | TrackBack(0) | 趣味の部屋 | このブログの読者になる | 更新情報をチェックする

2009年11月29日

WOL未対応のパソコンの電源をマジックパケットでオン

※なんだかよく分からないけど、arduino WOLリピーターを作りたい方は、こちらの初心者用の説明をどうぞ

紹介してきたarduino WOLリピータですが私の職場では、ある人が自宅から彼のオフィスのパソコンの電源を入れたいという希望に応えるものでした。

ご覧のとおり完成したのですが、最悪の問題が露呈。

なんと彼が使っているマシン「DELL DIMENSION 1100」は、どうやらWOLに対応していないらしいのです。確かに他のマシンはマジックパケット受信で問題なく電源が入るのにこいつだけは入らん。

いまどきのデスクトップマシンでWOL未対応なんてあるのですね。

ググルと休止状態からのWOLに対応とのことなので試してみた。確かに起動するが、起動するときとしないときがあったり、起動しても画面が写らなかったりと非常に不安定。WinXPの休止状態は使えると思っていない私なので、対策を・・・

こんなとき、やっぱり「arduino+ethernet shield」で作っておいて良かったと思うわけです。

そう、何とかなるのです。

WOL未対応のパソコンでもマジックパケットで外部ネットワークから電源を入れることが
「arduino+ethernet shield」なら簡単にできてしまうのです。

続き

posted by love4nature at 01:00| Comment(0) | TrackBack(0) | 趣味の部屋 | このブログの読者になる | 更新情報をチェックする

2009年11月28日

WOLリピータ(個別送信機能付き)

※なんだかよく分からないけど、arduino WOLリピーターを作りたい方は、こちらの初心者用の説明をどうぞ

昨日の続き

昨日はリピータ機能のみのものを紹介しましたが、今日は
登録した端末から可変抵抗器でターゲットを選択して、押しボタン押下でマジックパケットを送信する機能を持たせたものです。

使用部品は
CIMG3986.JPG
arduino2009×1
ethernet shield
×1
LCD (GDM1602K)×1
可変抵抗10k×1
半固定抵抗10k×1
抵抗10k×1
抵抗150×1
タクトスイッチ×1
ブレッドボード×1


回路図は多分こんな感じ。
WOLrepSender.gif

「arduino WOL リピーター」は、bjoern / arduino_oscというライブラリを利用してUDPを取り扱っています。リンクページからarduino_osc-tip.zipというファイルをダウンロードして、中にあるEthernet及びStringフォルダのファイルを、arduino IDEのフォルダ「\hardware\libraries\Ethernet」及び「\hardware\libraries\String」にコピーしてください。

当然ですが、ルーターでポートを開けて、開けたポートを「arduino WOL リピーター」に転送する設定が必要です。

以下スケッチ。

// WOLリピータ(個別送信機能付き)
// Digital 7, プッシュボタン(マジックパケット送信用)
// Analog 0, 可変抵抗器(送信先選択用)


// http://yutakalife.net/article/134042204.html

// 販売などの商用利用はご遠慮ください

// Copyright love4nature All Rights Reserved.

#include <WString.h>

#include <Ethernet.h>

#include <UdpRaw.h>

#include <LiquidCrystal.h>

// LCDピン接続:
// rs on pin 10
// rw on pin 9
// enable on pin 8
// d0, d1, d2, d3 on pins 5, 4, 3, 2
// 使用するピンの定義
LiquidCrystal lcd(10, 9, 8, 5, 4, 3, 2);

byte TargetMac1[] = { 0x00,0x00,0x00,0x00,0x00,0x00 }; // hostName1のMAC addressをセット
byte TargetMac2[] = { 0x00,0x00,0x00,0x00,0x00,0x00 }; // hostName2のMAC addressをセット
byte TargetMac3[] = { 0x00,0x00,0x00,0x00,0x00,0x00 }; // hostName3のMAC addressをセット

char hostName1[] = " hostName1 ";
char hostName2[] = " hostName2 ";
char hostName3[] = " hostName3 ";


// イーサネットの設定
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; // MAC address
byte ip[] = { 192, 168, 1, 200 }; // Arduino のIP address
byte gw[] = { 192, 168, 1, 1 }; // Gateway IP address
int localPort = 7; // 受信ポート(sndmagic version 0.2)を使用の場合は7番

// ターゲットのブロードキャストアドレスを指定
byte targetIp[] = { 192, 168, 1, 255};
int targetPort = 8000;

#define MAX_SIZE 192
// パケットサイズの最大値を設定
byte packetBuffer[MAX_SIZE]; // 受信パケット用バッファ
int packetSize; // 受信パケットのサイズが格納される
byte remoteIp[4]; // 送信元のIPアドレスを格納
unsigned int remotePort; // 送信元のポート番号を格納

int i;
int packetLen = 102;
byte packet[102];

void setup() {
Ethernet.begin(mac,ip,gw);
UdpRaw.begin(localPort);
lcd.begin(2,16);
lcd.clear(); // LCD表示をクリア
lcd.setCursor(4,0); // カーソルを1行目4カラム目にセット
lcd.print("arduino"); // 1行目にメッセージを表示
lcd.setCursor(2,1); // カーソルを2行目3カラム目にセット
lcd.print("WOL Repeater"); // 2行目にメッセージを表示
delay(2000);
lcd.clear();
lcd.print(" and Sender ");
delay(2000);
lcd.clear();

// 7番ピンをデジタル入力に設定
pinMode(7,INPUT);
Serial.begin(9600);
}

void loop() {
// アナログ0番ピンの可変抵抗器の値を読み込み341で割る
int val = analogRead(0)/341;

switch (val) {
case 1:
lcd.print(" Target host: ");
lcd.setCursor(0,1); lcd.print(hostName1);
break;
case 2:
lcd.print(" Target host: ");
lcd.setCursor(0,1); lcd.print(hostName2);
break;
case 3:
lcd.print(" Target host: ");
lcd.setCursor(0,1); lcd.print(hostName3);
break;
default:
lcd.print(" Target host:");
lcd.setCursor(0,1); lcd.print(hostName1);
}

// デジタル入力がHIGH(5V)でマジックパケットを作成
if(digitalRead(7)==HIGH){
delay(100); // チャタリング対策
packetSize = 126;
Serial.println(""); Serial.println("Sent packet to:"); Serial.println("");

for (int i = 0; i <= 5; i++){
packet[i] = 0xFF;
}

for (int i = 6; i <= packetLen; i++){
int j = abs((packetLen - i) % 6 - 6);
if ( j == 6 ) j = 0;
// 可変抵抗器の値に応じてターゲットを切り替える

switch (val) {
case 1:
packet[i] = TargetMac1[j];
break;
case 2:
packet[i] = TargetMac2[j];
break;
case 3:
packet[i] = TargetMac3[j];
break;
default:
packet[i] = TargetMac1[j];
}
}

if ( val == 1 ){
UdpRaw.sendPacket(packet,packetLen,targetIp,targetPort);
lcd.clear(); lcd.print("SentMagicPacket:");
lcd.setCursor(0,1); lcd.print(hostName1);
Serial.println(""); Serial.println(hostName1); Serial.println("");
delay(1000);
}
if ( val == 2 ){
UdpRaw.sendPacket(packet,packetLen,targetIp,targetPort);
lcd.clear(); lcd.print("SentMagicPacket:");
lcd.setCursor(0,1); lcd.print(hostName2);
Serial.println(""); Serial.println(hostName2); Serial.println("");
delay(1000);
}
if ( val == 3 ){
UdpRaw.sendPacket(packet,packetLen,targetIp,targetPort);
lcd.clear(); lcd.print("SentMagicPacket:");
lcd.setCursor(0,1); lcd.print(hostName3);
Serial.println(""); Serial.println(hostName3); Serial.println("");
delay(1000);
}

lcd.clear();

Serial.println("Magic packet ordering Done!");

for (int i = 0; i < packetLen; i++){
Serial.print(packet[i], HEX);
Serial.print(" ");
}
Serial.println(""); Serial.println("");
}

// 受信データがあれば実行(WOLリピータ機能)
if(UdpRaw.available()) {
packetSize = UdpRaw.readPacket(packetBuffer,MAX_SIZE,remoteIp,(uint16_t *)&remotePort);

Serial.print("Received packet of size ");
Serial.println(abs(packetSize));

Serial.print("From IP ");
for(i=0; i<3; i++) {
Serial.print(remoteIp[i],DEC);
Serial.print(".");
}
Serial.print(remoteIp[3],DEC);

Serial.print(" Port ");
Serial.println(remotePort);

if(packetSize < 0) {
Serial.print("ERROR: Packet was truncated from ");
Serial.print(packetSize*-1);
Serial.print(" to ");
Serial.print(MAX_SIZE);
Serial.println(" bytes.");
}

Serial.println("Contents:");
for(i=0; i<min(MAX_SIZE,abs(packetSize)); i++) {
Serial.print(packetBuffer[i],HEX);
Serial.print(" ");
}
Serial.println("");

// マジックパケットを送信
UdpRaw.sendPacket(packetBuffer,packetSize,targetIp,targetPort);
Serial.println("Start port forwarding to broadcast address:");
for(i=0; i<3; i++) {
Serial.print(targetIp[i],DEC);
Serial.print(".");
}
Serial.print(targetIp[3],DEC);
Serial.println("");
Serial.println("Done!");

lcd.clear(); lcd.print("Received packet"); delay(2000);
lcd.clear(); lcd.setCursor(4,0); lcd.print("From IP:");

lcd.setCursor(0,1);
for(i=0; i<3; i++) {
lcd.print(remoteIp[i],DEC);
lcd.print(".");
}
lcd.print(remoteIp[3],DEC); delay(2000);

lcd.clear(); lcd.print("Target MAC:");

lcd.setCursor(0,1);
for(i=6; i<11; i++) {
lcd.print(packetBuffer[i],HEX);
lcd.print(":");
}
lcd.print(packetBuffer[11],HEX); delay(2000);

lcd.clear(); lcd.print(" Target host: ");
}
}


posted by love4nature at 01:00| Comment(0) | TrackBack(0) | 趣味の部屋 | このブログの読者になる | 更新情報をチェックする

生後6週間

ニュージーランドでは、生後6週間で1回目の予防接種を行います。
そのときに少し熱を出しましたが、それ以外はまったく元気そのものです。

もちろん予防接種は無料です。
というか義務になっていて、受けていないと幼稚園や小学校の入学を断られることになりかねません。

ニュージーランドの教育システムは、日本のそれとは大きな違いがあります。

日本の教育システムは、変わりつつありますが、大まかに表現すると「詰め込みがた横並び管理教育」でしょうか。記憶力がモノを言います。

ニュージーランドの場合は、考える力を養うタイプです。ただし、聞いた話では、落ちこぼれを生みやすいそうです。

どちらが正しいということはありません。大切なのは、その土地や時代にあった方法にいつでも変えられる柔軟さでしょうか。

我が家の育児テーマである「早期自立」とは、自ら考える力を適切な時期に本人に持ってもらうことをいいます。

あくまで本人の選択を最優先にします。ですが選択肢を与えるのは親の責任だと考えております。
posted by love4nature at 01:00| Comment(0) | TrackBack(0) | 子育て日記 | このブログの読者になる | 更新情報をチェックする
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。