ArdunioでJJY信号を発信して電波時計を合わせる

40kHz標準電波(JJY)が止まってしまった後、一時的に復旧したのですがまた止まってしました。
復旧したので大丈夫とか思っていたのですが、電波時計もズレが大きくなってきたので合わせられるようにするべく情報法を収集…。やっぱり考える人は多かったみたいで、ArdunioでJJYを送信されている方がいらっしゃいました!!という訳で、コードの方も掲載されていたのでありがたくいただいて使ってみようと思ったのですが…、W5100なんて物はありません!!Orz

そしてなぜかある、ENC28J60のモジュール…。

なんていう状況から始まりまして、色々とコードを継ぎ接ぎして作ってみました。

Ardunio+ENC28J60+電源+アンテナ

アンテナ部分

今回作成したスケッチは、「Ardunio+ENC28J60」で動作します。
必要なライブラリとして、「ENC28J60 Ethernet library」「Timer1」「Time」の3つのライブラリの追加が必要です。

■作成スケッチ:etherShield_NTP_JJYClock.pde

・モジュール接続
LCDモジュール(Ardunio == LCD)
D9 == RS
D8 == enable
D4 == d4
D5 == d5
D6 == d6
D7 == d7
R/W == Ground

ENC28J60モジュール(Ardunio == ENC28J60)
D2 == INT
D10 == CS
D11 == MOSI
D12 == MISO
D13 == SCK

アンテナ部分は余っていたETEF(0.32mm)-5mを15cm位に丸めてループアンテナっぽくしてみました。こんなちゃちな感じでも結構飛びます…。3mぐらい離れたところにある電波時計が合わせられるぐらいです。それ以上離れると合わせられませんでした。

いちようは、内部でms単位まで修正して時間修正を行っています…。(タブン)

コード見てもらえばわかりますが、Webブラウザを使って設定を変更できるようになっています。
http://IPアドレス/config」で設定画面が表示されて設定変更が可能です。

・Arduino NTP/JJY Clock Network-Setting

○IPアドレス
○GWアドレス
○NTPサーバアドレス
○タイムゾーン

・Arduino NTP/JJY Clock JJY-Setting

○JJY送信設定
○送信周波数
○送信時間

・Arduino NTP/JJY Clock NTP-Setting

○NTP問い合わせ間隔設定

※:設定したデータはEEPROMに書き込まれるので次回以降は電源投入時も設定不要です。

電波の発振部分は、「Okiraku Programming-Arduinoで電波時計を合わせよう」さんのコードを一部修正したものを流用させていただきました。

本当は、RTCでも使ってみようかと思ったんですが面倒になって中断しました。
出来れば、時刻設定を手動で設定できるようにするとスタンドアローンでも使えるんですが、それだと手動で合わせるのと変わらないのですよねぇ。

・Ardunioライブラリ
Arduino ENC28J60 Ethernet library
Timer1
Time

・参考情報
Arduinoで電波時計を合わせよう – Okiraku Programming
Arduino Internet Clock « Andy’s Life
Updated Arduino ENC28J60 Ethernet library available « Andy’s Life
Arduino playground – Time
Arduino playground – Timer1

WikipediaのEPWING変換

とりあえずですが、WikipediaのダンプデータをEPWING形式に変換した物をBlog上から参照できるところにアップしてみました。

EPWING形式辞書

どれだけ続けられるか分かりませんが、最新版のアップが出来るようにと思っています。

iPhone4を手に入れてしまいました

えー、何というかiPhone4が手元にある状況です…。

なんだかんだで結局発売日には入手してしまいましたので、なんだかんだで情報を発信していきたいと思います。(^^;)

Wikipedia日本語版のEPWING変換(ServersMan@VPS編)

1.変換のための作業ディレクトリを作成

# mkdir /tmp/wikipedia
# cd /tmp/wikipedia

2.Perlのインストール

# # wget http://ftp.funet.fi/pub/CPAN/src/perl-5.8.8.tar.bz2
# tar xvf perl-5.8.8.tar.bz2
# cd perl-5.8.8
# ./Configure -Duselargefiles -Duse64bitint -des

# make
# make install
# cd ..

# wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
# tar xvf ImageMagick.tar.gz
# cd ImageMagick-6.6.2-7
# ./configure
# make
# make install
# cd PerlMagick
# perl Makefile.PL
# make
# sudo make install
# cd ../../ 続きを読む

iOS4の新機能

iOS 4 Multitasking

ホームボタンの2度押しで起動しているアプリの切替
アプリの終了は切替画面でアイコンを長押後に左上の「-」をタップすると終了
※:アプリ終了時、切り替え時の状態を保存し、次回起動時にその状態で再開する。
  (対応していないアプリの場合には終了状態が保存されず新規起動扱い?)

バックグラウンドで動作する機能
– 音楽再生:音楽アプリやラジオアプリをiPodアプリのようにバックグラウンドで再生可能
– VoIP:Skypeなどのアプリをバックグラウンドで利用できます。Skype通話しながらゲームで遊ぶことも可能
– 位置情報トラッキング:他アプリをメインで利用している時にもナビアプリが現在位置を補足可能
– プッシュ通知の拡張:既存のプッシュ通知機能に加え、とある位置に来たらアラート画面と音再生することが可能

iOS 4 Wallpaper

「設定」→「壁紙」より変更可能
※:ホーム画面(左側)、ロック解除時画面(右側)の2つの壁紙を変更可能

iOS 4 Rotation Lock(画面向きのロック)

ホーム画面2度押し後、左にトレイをフリックすると5つ並んでいる内の一番左側で画面方向のロックが可能

iOS 4 Folder

アイコン長押しで編集モードにしてからアイコンを重ねるだけ。
※:フォルダ名称はアプリの分類的なものから自動的に付けられるので必要に応じて編集モード時に修正する。

iOS 4 UserDic

「設定」→「一般」→「キーボード」→「ユーザー辞書」より追加修正可能

取り敢えず、大きな使い方のみを纏めてみました。

MySQL-DBバックアップ(ServersMan@VPS)

個人サイトだと24H365Dの稼働要件はない…。
ハズなので一時的にオフラインにしてバックアップする方法とちゃんとしたオンラインバックアップ方法

オフラインバックアップ

 1.MySQLサーバを停止させる。

 # /etc/init.d/mysqld stop
 2.MySQLのデータファイルおよびディレクトリをコピーと圧縮
  例えば、MySQLのデータディレクトリ/var/lib/mysqlを/tmp/mysql-backupに保存する場合、以下のようになる。

 # cp -r /var/lib/mysql /tmp/mysql-backup
 # cd /tmp/mysql-backup
 # tar cvf mysql-backup_<日付> mysql-backup

 3.MySQLサーバを起動し直す。

# /etc/init.d/mysqld start

  ・リストア方法
  # /etc/init.d/mysqld stop
  # cd /tmp
  # tar xvf mysql-backup_<日付>
  # cp -r /tmp/mysql-backup /var/lib/mysql

続きを読む

WordPressのインストール(ServersMan@VPS)

 やっと、Wordpressのインストールを始めますです。

1.ソースのダウンロード と 解凍
$wget http://ja.wordpress.org/latest-ja.tar.gz
$tar xvzf latest-ja.tar.gz

2.Wordess 設定
wordpressフォルダ毎、コピー(/var/www/wordpress/ に設置する例)

$cp -r wordpress /var/www
$chown -R daemon:daemon /var/www/wordpress
$chmod 755 /export/user/7/zjp_d3d097/live_19c92f/var/wordpress/wp-content/plugins
$chmod 755 /export/user/7/zjp_d3d097/live_19c92f/var/wordpress/wp-content/themes

3.設定ファイル編集

$cd /var/www/wordpress
$vim wp-config.php
define(‘DB_NAME’, ‘wordpress’);
define(‘DB_USER’, ‘wordpress’);
define(‘DB_PASSWORD’, ‘<DB作成時にWordpressに設定したパスワード>’);

WordPressのインストール準備(ServersMan@VPS)

 いきなりWordpressをインストールしたいところなんですが…。
たぶんパッケージが足りないのでまずは必要パッケージからインストールします。

1.PHP と MySQLのインストール

パッケージ確認
yum info mysql-server

インストール
yum install mysql-server
yum php-devel php-mbstring php-mysql
(念のため)

MySQL を起動
$/etc/init.d/mysqld start

MySQL自動起動(任意)
$chkconfig mysqld on

 2.Wordpress用のDBを作成する。

$mysql -u root











※:ログアウトした場合の再ログイン方法
mysql -u root -p
Enter password: 設定したパスワード(root)

参考サイト

ServersMan@VPS PHP5.3.2 + MySQL5.1.45 のインストール – てもぐ

ServersMan@VPSの初期設定

1.新しいユーザーの作成
useradd -G wheel <新しいログインユーザー名>

passwd <新しいログインユーザー名>
Changing password for user <新しいログインユーザー名>
New UNIX password: <パスワード>
Retype new UNIX password: <パスワード>
passwd: all authentication tokens updated successfully. ← コレがでればパスワード変更完了

2.viのUnicode対応
プラスで、ログインユーザーのホームに「.vimrc」ファイルを作ってUnicode対応させます。

$vi ~/.vimrc

set fileencoding=japan
set fileencodings=iso-2022-jp,utf-8,euc-jp,ucs-2le,ucs-2,cp932

3.rootログイン不可に設定

$vi /etc/ssh/sshd_config

=== 省略 ===
PermitRootLogin no ←「no」に設定変更(コメントアウトされている)

・念のために「1.」で作成したユーザーでログインしてrootになれることを確認

書き換えとログイン確認が終わったらsshdを再起動
$/etc/init.d/sshd restart

続きを読む

通信速度制限の各キャリアの実施状況

NTTドコモ:直近の3日間で300万パケット(約366MB)を超え、通信状況が混雑していると、通信速度制御の対象となる。

KDDI:前々月のパケット通信量が300万パケット(約366MB)を超えたユーザーについて、21時~翌1時の間、「EZweb」の通信速度が制御される。

ソフトバンク:前々月のパケット通信量が、携帯電話では月間300万パケット(約366MB)、スマートフォンでは月間1000万パケット(約1.2GB)以上を利用したユーザーを対象に、通信速度を制限する場合がある。

イー・モバイル:24時間ごとに300万パケット(約366MB)を超えて利用したユーザーに対し、当日の21時~翌日2時の間、通信速度制限を実施する。

WILLCOM(3G):一定時間もしくは一定のデータ量を超えた通信をおこなった場合、通信の切断もしくは規制する場合がある。 だけど、事実上無し。

みればみるほど各社の思惑というかが入り乱れてなんかおもしろくもありますね。