Date:  Wed, 14 Nov 2007 16:53:03 +0900
Subject:  【オブジェクト倶楽部: 2007-41号】
X-Mail-Count: 00216

       ┏━━━━━━━━━━━━━━━━━━━━━━━━━━■
       ┃                         ■┃
      ●┃● ● オ ブ ジ ェ ク ト 倶 楽 部   ■ ┃
       ┃                       ■  ┃
       ┗━━━━━━━━━━━━━━━━━━━━━━■━━━┛
                          No.210 2007/11/14

■ I N D E X
┃
┣【Topics】オブジェクト倶楽部クリスマスイベント2007 テーマ決定!
┣【Topics】ライトニングトークス出場者募集!
┣【PF】現場リーダーの心得[4]
┣【プログラミング】組込みlinuxを使ったはじめての組込み開発[4]
┗【アンケート】気になるシステム業界 ホントのところ

〇━━━━━━━━━━━━━━━━━━━━━━━━━━━T o p i c s━
 〇 オブジェクト倶楽部クリスマスイベント2007のお知らせ(12月21日:代々木)
  〇 〇━━━━━━━━━━━━━ ━━・ 

毎年恒例となりましたオブジェクト倶楽部クリスマスイベント2007!テーマが
決定いたしましたので、読者の皆さんにいち早くお知らせです。プログラムの
公開は来週のメルマガでお知らせの予定です。どうぞお楽しみに!

日 時:2007年12月21日(金) 10:00〜18:30 (懇親会はありません)
場 所:国立オリンピック記念青少年総合センター http://nyc.niye.go.jp/
テーマ:オブジェクト指向
内 容:講演、ワークショップ
参加費:無料
サイト:http://www.ObjeCtclub.jp/event/2007christmas/

参加申し込みは、12月上旬頃を予定しています。お申し込み時の混雑が予想さ
れますので、お気をつけください。ぜひ、職場のみなさまお誘いあわせのうえ
ご参加ください。スタッフ一同楽しみにしています。

〇━━━━━━━━━━━━━━━━━━━━━━━━━━━T o p i c s━
 〇 ライトニングトークス出場者募集!(11月30日締切り)
  〇 〇━━━━━━━━━━━━━ ━━・

いつのイベントでも一番の人気を誇る、オブジェクト倶楽部のライトニングトー
クス!あなたの「話してみたいこと」と「ちょっとの勇気」を持って、ぜひご
応募ください。テーマはどんなことでもOK!多くの皆様のご参加をお待ちしてい
ます。

<参加申込>
下記詳細を明記のうえ、メールにてお申込みください。
Email:2007xmas@objectclub.jp (担当:千葉)

応募締切り:11月30日(金)
選考の結果は、12月3日ごろご本人にお伝えいたします。

■選考にあたって必要な情報
 タイトル、講演概要、トークス発表者名、会社名公開可否、YouTube公開可否

<参考>【特集】豆知識:ライトニングトークスの歴史
     http://www.ObjectClub.jp/ml-arch/magazine/173.html
     エンジニアマインドVol.3「ライトニングトークス入門」
     http://gihyo.jp/magazine/emind/archive/2007/vol3

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━1 s t ■━
■
┗【PF】現場リーダーの心得[4]

オブジェクト倶楽部メルマガ読者のみなさん、こんにちは。
岡島です。

今回は素晴らしい対応力を持ったメンバーのお話です。
私は毎週福井と東京を行き来しています。その関係で、お客さまからの問い合
わせメールにすぐに対応できない場合があります。
先日も、新幹線でお客さまからの質問メールを受信しました。

「○○機能を動かしていたら、××というエラーが発生し、回避方法と再現手
順がわかりません。とりあえずは、△△をやりたいので、対処方法を教えてく
ださい」

テスト稼働中のシステムの挙動に関する話題で、私が回答すべき内容です。
細かく調べないと分からない部分もあり、メンバーに代理回答をお願いしなく
てはならないなぁ、と新幹線でしばし悩んでいました。

すると嬉しいことに、メンバーが主体的に回答をしてくれたのです。そして、
その対応が素晴らしかった!
まず、お客さまの疑問に的確に回答していました。これでお客様のもやもやが
解消されます。

「こちらでも検証しました。再現手順はおそらく次のようなステップで、問題
が発生する理由は○○です。このような理由ですから、××でとりあえず回避
可能です」

さらに、次にお客さまがすべきことを明確にしていました。お客様の次のアク
ションが明確になりました。

「そちらの環境でも再現していただき、違う手順でも発生するのであれば教え
てください」

そしてもう一つ。お客さまにたいする「おもてなし」です。ここまでやってく
れれば完璧な対応といえるでしょう。

「修正したモジュールを取り急ぎお送りすることも可能ですので、必要であれ
ばご連絡ください」

対応力とは、お客さまやチームのメンバーに対する「おもてなし」や「おもい
やり」の心から発揮されることが良く分かった瞬間でした。
そしてリーダーは、自分だけがお客さまに対応していると思ってはいけません。
実はチーム全体の力で対応しているのです。そのことをメンバーにも伝え、対
応力の強いチームを育てましょう。

ちなみに、「きっと新幹線に乗って身動きが取れないであろう私」に対するお
もいやりも嬉かった理由です。(岡島)

■私のブログです。リーダーネタと少々の技術ネタを扱ってます。
 http://d.hatena.ne.jp/HappymanOkajima/
■「プロジェクトを成功させる現場リーダーの技術」私の著作です。
 現場リーダーの仕事術をやさしく説明しています。
 http://www.amazon.co.jp/exec/obidos/ASIN/4797333502/
_______________________________________________________________________
この記事への評価にご協力をお願いします。
URLをクリックして、「ご協力ありがとうございました」のメッセージがご使用
のブラウザに表示されれば投票完了です。
良かった:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=M004-3&choice=0
普通:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=M004-3&choice=1
イマイチ:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=M004-3&choice=2

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━2 n d ■━
■
┗【プログラミング】組込みlinuxを使ったはじめての組込み開発[4]

1ヶ月は早いですね。
1年経つのも早いですね、何と今年も残り60日切ってます。

さて、今回はカード読取部分を作っていきましょう。
下の図のカードリーダーとArmadilloの部分です。

【作成中システムのHW/接続構成】
                 usb                  tcp/ip 
[カードリーダ] ―――― [Armadillo] ――――― [勤怠サーバマシン] 

■サンプルコードについて
今回使用するサンプルコードは、以下のURLからダウンロードすることができま
す。使用するフリーのライブラリも同梱しています。詳しくはzipファイル内の
readme.txtをご覧ください。
http://www.ObjectClub.jp/ml-arch/magazine/magazine210/cardreader.zip

■USB機器の制御
使用するカードリーダにはPaSoRi(RC-S320)を使用します。FeliCaを利用した、
非接触ICカードを読み書きできるUSB対応リーダーです。
制御には「libusb」「libpasori」というC言語で書かれたフリーのライブラリ
を使用します(今回は必要なソースだけコンパイルして使いますが・・・)これらに
ついては後述するとして、一般的にこういった機器の制御に使用されるデバイ
スドライバについて簡単に触れておきます。
デバイスドライバというのは、ハードウエアとアプリケーションの橋渡しをす
るソフトウエアのことです。これはOSの起動時にメモリに常駐し、アプリケー
ションにハードウエアを制御するための機能を提供します。

■使用するライブラリについて
libusbはUSB機器にアクセスするための有用なライブラリです(デバイスドライバ
で言うと制御部分が無い、機器へのアクセスのみを担当する箇所になります)。
libpasoriはPaSoRiを制御するために使用可能なライブラリで、ポーリング、
リード機能などが提供されています。但しこのライブラリはPaSoRiのプロトコ
ル解析を目的としているものですので、正規にPaSoRiを使用するアプリケーショ
ンを開発する場合はSDK for FeliCaを使用した方が良いでしょう。
組込みLinuxでの開発では、このようなLinuxの資産を活用できるのがメリット
の一つです。

■カードリーダの制御
使用するライブラリも決まりましたので、カードリーダの読取りアプリケーショ
ンを作っていきましょう。
この中では(下記コード参照)libpasoriの関数を使ってカードリーダをポーリン
グします。フェリカカードを検出するとカード内容(今回はカードIDmなどの
カード情報)を読取ります。libpasori内ではPaSoRiに対して制御コマンド送信
しその結果を受信していますが、その際のアクセスにlibusbの関数を使用して
います。
制御のシーケンスは以下の通りです。

PaSoRiをOpenする。
 USB接続されているデバイスからベンダー番号とプロダクト番号を参照し、
 PaSoRiを特定して以降で使用するファイルディスクリプタを取得する。
 合致するデバイスがない場合は未接続とみなし、アプリケーションを終了す
 る。
PaSoRiの初期化処理を行う。
 パケット通信を行うのに必要な初期化処理などを行う。初期化に失敗した場
 合は、アプリケーション終了する。
FeliCa対応カードの有無をポーリングする。
IDmを読込む。

/**
 * FeliCa対応カード情報を読み込んで、
 * 勤怠マシンにカードのIDmを送信します。
 *
 * TODO TCPでの送信部分を追加する。
 *
 */
int main(void)
{

       /** passori構造体のポインタ */
       pasori* p;
       /** felica構造体のポインタ */
       felica* f;
       /** カードIDm */
       char idm[32];

       printf("cardread test start....\n");
       printf("open pasori..\n");

       /** カードリーダをオープンする 説明,砲△燭襪箸海 */
       p = pasori_open(NULL);

       /** アドレスを取得できなかった場合はエラーとする */
       if(!p) {
              printf("error\n");
              exit(-1);
       }

       printf("pasori init ..\n");
       /** カードリーダの初期化をする 説明△砲△燭襪箸海 */
       pasori_init(p);

       /**
        * TODO  終了コマンドでループを抜ける
        *
        */
       for(;;) {
               /** 
                * カードの有無をポーリングする 説明にあたるところ
                * felica_polling関数内でポーリングコマンド送信
                */
               f = felica_polling(p, POLLING_ANY, 0, 0);
               printf("polling done ..\n");

               if(f) {
                       /** カードIDmのみ抜き出す 説明い砲△燭襪箸海*/
                       cpDumpStr(f->IDm, 8, idm);
                       printf("idm:%s\n", idm);
               } else {
                       printf("Edy Card not found..\n");	
               }

               free(f);
               sleep(1);		
       }

       pasori_close(p);
       printf("close pasori..\n");

       return EXIT_SUCCESS;
}

アプリケーション実行の際はUSB機器の制御権限を持つユーザ(rootなど)で行っ
てください。

■終わりに
今回はカードリーダの読取部分を作成しました。Linuxの資産を活用して機器の
制御部分も簡単に作成できることを実感していただけたかと思います。
また、コンパイラの違いはありますが、組込みLinuxと通常のLinuxで使用する
コードは同じものです。
ポーティングが容易というのも、組込みLinuxの利点ではないでしょうか。
FeliCa対応カードはEdy、Suica、ICOCA、PASMOなど、どんどん身近な存在になっ
てきています。これをきっかけに、FeliCaや組込み技術に興味を持っていただ
けると幸いです。

■次回の予定
次回は最終回です。カードIDmを抜き出せたので前回作成したソケットプ
ログラムと結合しArmadilloから「勤怠サーバーマシン」と連携します。(藤井)

■URL
 ・Armadillo http://armadillo.atmark-techno.com/
 ・PaSoRi http://www.sony.co.jp/Products/felica/pcrw/index.html
 ・ポーティング http://e-words.jp/w/E3839DE383BCE38386E382A3E383B3E382B0.html
 ・libusb http://libusb.sourceforge.net/
 ・libpasori http://libpasori.sourceforge.jp/
 ・felica networks http://www.felicanetworks.co.jp/index.html
 ・SDK for felica http://www.sony.co.jp/Products/felica/pdt/index.html#sdk
_______________________________________________________________________
この記事への評価にご協力をお願いします。
URLをクリックして、「ご協力ありがとうございました」のメッセージがご使用
のブラウザに表示されれば投票完了です。
良かった:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=E0010-3&choice=0
普通:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=E0010-3&choice=1
イマイチ:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=E0010-3&choice=2

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━3 r d ■━
■
┗【アンケート】気になるシステム業界 ホントのところ

今週は「極めるとしたらどのあたり?」のホントのところ。
開発の仕事に関係することで読者の皆さんがひとつ極めるとしたら、どんなこ
とですか?

  要求定義などの上流工程や設計。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=176&choice=0
  プロジェクトマネージメントなどの、マネージメント関連。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=176&choice=1
  テストに関して。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=176&choice=2
  言語など、主にコーディングに関係する技術的なこと。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=176&choice=3
  品質向上に対する考えや事例など。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=176&choice=4
  ハード関連。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=176&choice=5
  上記以外。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=176&choice=6
  それは秘密です。
     http://www.ObjectClub.jp/special/kininaru/vote?vol=176&choice=7
  ちょっと語らせて!
     詳細をこのメールに返信ください!!

アンケート結果はオブジェクト倶楽部サイト上にて公開します。お楽しみに。
なお、前号「プロジェクト・ファシリテーションのどんなところが気に入って
いますか?」の結果は公開中。ぜひご覧下さい。
⇒http://www.ObjectClub.jp/special/kininaru/vol175/PlonePopoll_results2
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━--■--●--■
■
┗編集後記

こんにちは、編集人です。ちらほら忘年会の声も聞こえてくるころになりまし
た。もう既に予定が入っている方はいらっしゃいますか?今年は例年の数十倍
も、インフルエンザが流行る予想がされていると聞きました。お付き合いも大
切ですが、疲れているときにはほどほどに。普段からうがい・手洗いを心がけ
ましょうね。クリスマスイベントへは、万全の体調で来てくださいね。
待ってます。

今週の強引な一言
*** 毒薬変じて薬となる(ことわざ)***
はじめは害をなしたものが、一転して非常な力になることのたとえ。
「やらなきゃ良かったなぁ〜。」なんて思った仕事で、生涯に残るような体験
をすることがあったり、仕事が終わってもお付き合いするような人脈に恵まれ
るってことはありませんか?
とはいっても、用心してしまうのも心情ですね・・・汗
 出典参考:故事ことわざ辞典 東京堂出版
(上田雅美)

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━--■--●--■
● ご意見、ご感想は         ⇒このメールに返信ください
〇 配信中止、アドレス変更は ⇒http://www.ObjectClub.jp/community/object_ml/help/
〇 免責事項、過去の記事は   ⇒http://www.ObjectClub.jp/community/object_ml/
■ 発行:オブジェクト倶楽部 ⇒http://www.ObjectClub.jp/
■ 編集代表:平鍋  健児
Copyright (c)2003-2007 オブジェクト倶楽部. All Rights Reserved.
powered by Eiwa System Management, Inc.