Comments
Description
Transcript
2009
情報・コンピュータサイエンス分野 目 次 1 楽器音の波形読み取りと和音解析 2 手書きチャットの製作 3 点字変換システムの作成 4 防犯機器の製作 5 データベースを用いた検索システムの構築 6 非接触型充電器の開発 7 UDP 通 信 を 用 い た CASE ツ ー ル の 作 成 8 ノイズキャンセリングを応用した回路 P 1 課題名 楽器音の波形読み取りと和音解析 発表者氏名 下山真奈 指導教員 石川幸治 西田侑央 根津佑亮 背景・目的 今 回 の 研 究 テ ー マ に 至 っ た の は ,元 々 音 楽 が 好 き で コ ン ピ ュ ー タ を 使 っ て の 和 音 解 析 に 興味を持っていたからである。本研究では楽器音をコンピュータ上に取り込み,プログラ ム上で和音解析を進めていく。 理論 本 研 究 で 最 も 重 要 な 理 論 が「 フ ー リ エ 変 換 」 で あ る 。こ の「 複 雑 な 周 期 関 数 は 必 ず い く つかの正弦波成分に分解できる」という数学の理論を元に,楽器音に含まれる周波数成分 を解析するのに用いている。一般的に楽器音には「基音」と呼ばれる音階を決定する周波 数成分の他に, 「 倍 音 」と い う 音 色 を 決 定 す る 周 波 数 成 分 が 含 ま れ て い て ,基 音 の 周 波 数 成 分=音階の情報となるのだが,実際の楽器音には前述の通り,倍音が含まれていて容易に 基音を判別できないことが問題となる。また,解析の対象が和音になると,例えばある一 つの基音が他方の倍音と混同してしまうことがあるため,和音数が増えれば増えるほど解 析は著しく困難になる。これらの難点は主に「フィルタリング処理」を使って解消してい くが,詳細は次項にて説明する。 他 に も ,波 形 を コ ン ピ ュ ー タ で 扱 う 以 上 ,デ ー タ が 離 散 的 で 有 限 (=デ ジ タ ル )で あ る た め にフーリエ変換の理論がそのまま適応されなかったり,演算量が多くなってしまったり, 実用的なレベルで使えないという点もある。それを克服するために,離散的なデータを扱 う た め の 「 離 散 フ ー リ エ 変 換 (DFT) 」 の 重 複 演 算 を 削 っ た 処 理 ( バ タ フ ラ イ 演 算 と い う ) を使用した, 「 高 速 フ ー リ エ 変 換 (FFT)」を 用 い る こ と に し た 。結 果 ,与 え ら れ た 波 形 に FFT を 施 す こ と に よ って, 「 周 波 数 ス ペ ク ト ル 」と い う 周 波 数 成 分 を 表 し た グ ラ フ を 得 る こ と が で き る (図 1)。 方法と結果 ま ず ,楽 器 音 を コ ン ピ ュ ー タ 上 に 取 り 込 み ,そ の 波 形データを自作プログラムに入力する。このプログラ 図1 周波数スペクトル ム は 入 力 さ れ た 波 形 デ ー タ を 受 け 取 り ,デ ー タ を FFT で 扱 い や す い よ う に「 窓 関 数 」を 掛 P / P 2 け る 。次 に FFT を 掛 け ,出 て き た 周 波 数 スペクトルを和音解析する。 ここから基音の判定を行う作業として, 「くし型フィルタ」に通す。これはある 図2 和音解析フローチャート 図3 くし型フィルタを掛けた結果 1 音を基準に,その整数倍音のみ抽出す る フ ィ ル タ で あ る 。 そ れ を 12 音 分 , す な わ ち 12 個 の く し 型 フ ィ ル タ を 使 い 解 析に活用してい る。図 3 は,ある単音 を 解 析 し た 時 の 4 オ ク タ ー ブ 48 音 の 音 量 比 較 ,つ ま り 振 幅 比 を 最 大 値 100 で 表 し た も の で あ る 。こ の 図 よ り 基 音 が 2 オ ク タ ー ブ 目 の B で あ り , 2 倍 音 が 14%, 3 倍 音 が 17%程 度 含 ま れ , 4 倍 音 以 降 は ほ と ん ど 含 まれていないスペクトルパターンだということがわかる。和音を解析する際はこのパター ンをもとに,最低音から順にあるしきい値以上を抽出 していき,その音を基音と判断した上で倍音成分を除 去していく。これで,前項で挙げた“ある一つの基音 が他方の倍音と混同してしまう”という問題を解消す ることができる。この結果から,楽器の特性に合わせ 図4 自作プログラムの結果 て和音の音階判定を行う。 考察 上 記 の 方 法 は シ ン セ サ イ ザ ー の よ う な ,弾 き 方 に よ っ て 音 色 が ほ と ん ど 変 わ ら な い 楽 器 ではなく,ギターやベースなど,弾き方によって音色が変わる(スペクトルパターンが変 化する)楽器を対象にすることは難しい。また,チューニングがずれた楽器に関しても, 半音間にピークが出てしまうとそれを検出できないので同じく難しいことがわかった。 今 後 の 展 望 と し て は ,解 析 し た 音 階 か ら コ ー ド を 判 定 ,そ の 情 報 を MIDI 形 式 で 出 力 し , フリーソフトなどを使用して楽譜表示する。 参考文献 デ ジ タ ル 信 号 処 理:http://laputa.cs.shinshu-u.ac.jp/~yizawa/InfSys1/basic/index.htm フ ー リ エ 変 換 : http://luckypool.hp.infoseek.co.jp/Fourie/ 音 階 と 周 波 数 の 対 応 表 : http://www.yk.rim.or.jp/~kamide/music/notes.html P / P 3 課題名 手書きチャットの製作 発表者氏名 櫻井拓人 指導教員 増田泰治 永田直樹 平野拓哉 舩坂拓海 背景・目的 チャットはメールや電話などと違い,遠く離れた場所の複数の人とのコミュニケーシ ョンに適した通信手段といえ,最近はチャット機能が使えるものが多く存在している。 私たちは「これらのチャットより使いやすいものを作ってみよう」と考え,この手書 きチャット製作に挑戦することにした。このチャットソフトは,テキストの送受信に加 え,ペイント機能を備え,グラフィックの送受信が可能である。また,通信のためのサ ーバー設置を必要としない複数接続を可能としたものである。 開 発 に は Visual C++ 2008 Express Edition, ラ イ ブ ラ リ に は DirectX を 使 用 し た 。 理論 ●2台の接続方法について 未接続の2つのパソコンを接続する場合,名前を入力した後,片方が受付して片方が 相手のIPアドレスを入力することで接続できる。 ●複数の接続方法について 接続をするパソコンをAとし,B・C・Dのパソコンは相互接続状態とする。 まずAとBが接続して相互接続する場合,Aが残りのC・Dと接続すれば良い。その ためには,C・Dを受付状態にすることと,C・DのIPアドレスが必要である。 順番としては,C・Dを受付状態にした後に,C・DのIPアドレスを送ることで相 互接続を確立することができる。 図1 相互接続 方法と結果 製作段階では,文字の送受信を行うチャットと絵の送受信を行う チャットを二つの班 P / P 4 でそれぞれ製作し,最終的に二つのプログラムを統合した。これによって通信部分とペ イント部分の製作を並行して行うことができた。中間発表後の改良点を以下に示す。 ・ 複 数 人 で の 相 互 接 続 が で き ,入 退 室 表 示 機 能 も 搭 載 。 ・ DX ラ イ ブ ラ リ に よ る 描 画 を 利 用 す る こ と で 簡 易 GUI を 設 置 。 ・ 一 つ の 画 像 し か 保 持 す る こ と が で き な か っ た が ,画 像 を フ ァ イ ル と し て 保 存 す る ことで複数の画像の保持,閲覧が可能になった。 本プログラムの構造を図2に示す。 図2 プログラムの簡易構造 考察 複数接続をするうえで,先に受信されるべきデータが送信速度差によって,後に受信 されるバグがあった。先に受信されるべきデータの受信を確認することで,バグをなく すことはできたが,複数接続にかかる時間が数秒に増えたのでプログラムを改良する必 要がある。また,接続の人数が増えることで,送受信や相互接続に時間がかかるように なるため,相互接続の上限も決める必要がある。 ログアウトの処理が正しく行われず再接続ができないバグがあったが,全く違うアプ ローチでログアウトの処理を行うことで再接続を可能にした。 前述のとおり,複数の画像の保持,閲覧が可能になったが,画像の数だけファイルが 必要な為,一つにまとめられないか検討中である。 サブメニューの操作中に他からの接続があると受信できない 問題があるので,プログ ラムの構造を改良する必要がある。 参考文献 DXライブラリ置き場 HOME http://homepage2.nifty.com/natupaji/DxLib/ P / P 5 課題名 点字変換システムの作成 発表者氏名 大澤愛喜 指導教員 石川幸治 城戸華奈枝 杵村江 高橋伸司 藤澤優太 保木本貴之 背景・目的 3年間で私たちが学習したことを最大 限発揮するため,ソフトウェア・ハードウ ェアの両方を必要とし,かつ社会に貢献で きる(福祉に役立つ)研究を行うという目 的を持ってこのテーマに決定した。 理論 点 字 変 換 シ ス テ ム は ,ソ フ ト ウ ェ ア に 入 力された文字を自作の点字打ち機(以下プ リンタという)で打ち出すというもので, 図1 システム構成図 点字器を使用せずに点字を打つことができる。このシステム処理の流れを図 1 に示す。 方法と結果 変 換 シ ス テ ム 作 成 に あ た っ て ,『 ソ フ ト ウ ェ ア 班 』 と 『 ハ ー ド ウ ェ ア 班 』 の 2 班 に 分 か れ作業を行った。 ―ソフトウェア班― 変 換 ア プ リ ケ ー シ ョ ン の 作 成 に は Visual C++言 語 を用いた。アプリケーションには,テキストファイル の読込・保存機能,プリンタへの出力機能,打ち出さ れる点字を画像プレビューする機能を実装した。その 外形を図2に示す。 プ リ ン タ へ の 出 力 機 能 は ,ポ ー ト 一 覧 か ら 使 用 ポ ー トを選択→ポートを開く→文字をプリンタに受け渡す と い う 流 れ で 行 わ れ る 。 プ リ ン タ へ の 出 力 は RS232C 図2 アプリケーションの外形 接続を用いた。 画像プレビュー機能は,それぞれの文字に対応した画像をピクチャボックスに出力する 方法で行っている。 P / P 6 ―ハードウェア班― プ リ ン タ は PIC マ イ コ ン で パ ソ コ ン か ら受け取ったデータを処理し,それに基づ いてステッピングモータの制御を行うこと で動作する。プリンタのフローチャートは 図 3 の よ う に な っ て い る 。 PIC プ ロ グ ラ ミ ングは主にアセンブラで行った。 機構は大きく分けて打ち出し部分・文字 送り部分・紙送り部分の 3 つ に分かれて い る。打ち出し部分の機構は往復スライダク 図3 プリンタのフローチャート ランク機構を応用したものを使用し,ピンを上下させて点字を打ち出す。 考察 ―ソフトウェア班― アプリケーションの操作を単純で分かりやすいものにし,規則に合わない入力があった 時に警告メッセージを表示するなどの機能を付け加えたため,目標としていた「誰にでも 使いやすいものを作る」という点においてかなりのレベルで達成することができたと考え られる。 そ の 反 面 , プ ロ グ ラ ム が 約 6000 行 と か な り 長 く な っ て し ま っ た 。 改 行 数 の 取 得 や 警 告 メッセージの表示,画像プレビュー機能は単純な動作の繰り返しなので,記述方法を改良 すれば大幅な簡略化が可能と思われる。 ―ハードウェア班― 当初,打ち出し機構は点字のパターンを彫ったドラ ムを回転させ文字決定をするという ものだったが,円柱側面の加工が非常に難しかったために方針を変更して取り組んだ。 また文字送り機構・紙送り機構は完成していないが,打ち出し機構の固定されている長 ナットに通した長ボルトを回転させることによって文字送り機構を,また,ゴムタイヤで 紙を挟み,タイヤの回転を制御することで紙送り機構を実現させることを考えている 。 参考文献 ・ 明 快 入 門 Visual C++ 2005 シ ニ ア 編 林晴比古・著 ソフトバンククリエイティブ ・ MSDN オ ン ラ イ ン http://msdn.microsoft.com/ja-jp/default.aspx ・ 16F87x デ ー タ シ ー ト http://ww1.microchip.com/downloads/en/devicedoc/30292aj.pdf P / P 7 課題名 防犯機器の製作 発表者氏名 齋藤可苗 指導教員 近藤千香 渡瀬瑶子 背景・目的 私たちの研究の内容は,光感知センサーを利用した防犯機器の製作である。 今日世間は物騒になり,身の回りで空き巣の被害に遭ったという話も聞く。しかし,警 視庁の「都内における侵入窃盗の認知件数」と「都内における空き巣の認知件数」のグラ フは減尐傾向にあり,国民の防犯に対する意識とともに向上していると言えるだろう。 そこで、光感知センサーを利用して住居に侵入しようとしている人を感知し,家庭で利 用できる防犯機器を製作しようと考えた。また,できる限り尐しの変化を感知し,さらに 広範囲にわたって感知できるようなものを製作する。 理論 暗 い 部 屋 で レ ー ザ ー と セ ン サ ー を 対 に し て 置 き ,光 感 知 セ ン サ ー に 光 が 当 た る 位 置 に レ ーザーを点灯させておく。このセンサーは明→暗になったとき1kΩ以下から数MΩに変 化する可変抵抗のように動作する。これを反転させ、レーザーの光が遮られるとブザーに 電流が流れるようにした。 図1 製作した回路 74LS74 と い う も の は 、プ リ セ ッ ト と ク リ ア の 機 能 つ き D-FF が 2 つ 入 っ た IC で あ る 。 ク ロ ッ ク パ ル ス の 立 ち 上 が り で 、D の デ ー タ を 記 憶 す る こ と が で き る 。こ れ を 使 用 す る こ とによって光が遮られた時間内だけブザーが鳴る仕組みから、光が遮られたことを感知し ブザーが鳴り続けるという仕組みに仕上げることができた。 P / P 8 図 2 74LS74 の 回 路 図 3 74LS74 の タ イ ム チ ャ ー ト 今 回 LED で は な く 、 赤 色 レ ー ザ ー 発 光 モ ジ ュ ー ル を 使 用 し た 。 レ ー ザ ー の 特 徴 の 一 つ に指向性というものがある。普通の光だと拡散してしまうが、レーザー光は拡がらずに遠 距離でも強い光を得ることができる。これを応用したものにレーザーポインターがあげら れ る 。 1mW 未 満 の出 力 であるため、目 標 までの軌 跡 (ビーム)は通 常 の大 気 中 では全 く見 えない。 そのため LED の明 るさに対 して見 つかり難 く、防 犯 効 果 が高 いと考 えた。 図4 LED と レ ー ザ ー 方法と結果 実 際 に 人 の 侵 入 を 感 知 で き る か 実 験 を 行 っ た 。レ ー ザ ー と 本 体 を 対 に し て 置 き 、そ の 間 を人が通過した場合にどこまでの距離まで感知できるのか検証した。 実 験 室 の ド ア の 幅 で あ る 78cm か ら 始 め 、 30m ま で の 幅 で 測 定 し た 結 果 、 こ の す べ て の 場合で人を感知し警告音を鳴らすことができた。 考察 レーザーを使用することにより相手に見つかり難く、さらに長距離での感知もできるも のになった。今回製作した機器で、十分に防犯効果が得られると考えられる。 目的であった「家庭で使用できる防犯機器の製作」として確かな結果と作品に仕上げる ことができた。 参考文献 すぐに役立つ電子工作 太平洋工業株式会社編 日刊工業新聞社 1984 年 5 月 初 版 P / P 9 課題名 データベースを用いた検索システムの構築 発表者氏名 碓氷嵩 指導教員 近藤千香 滝田ちせら 保手濱紫穂 目的 この研究の目的はリレーショナルデータベースの基本と動的なウェブページの関係を学 び,検索システムを構築することである. 私 た ち は こ の 題 材 と し て ,進 路 を 決 定 す る 3 年 生 に と っ て 身 近 で あ る 大 学 の 情 報 (学 部 ・ 学 科 , 進 学 実 績 な ど )を 検 索 で き る シ ス テ ム の 構 築 を 選 ん だ . 理論 データベースとは,特定のテーマに沿ったデータを集めて管理し,容易に検索・抽出な ど の 再 利 用 を で き る よ う に し た も の で あ る .ま た ,デ ー タ ベ ー ス を コ ン ピ ュ ー タ 上 で 保 守 , 管 理 す る た め の シ ス テ ム ( Oracle Database , PostgreSQL,MySQL な ど )を デ ー タ ベ ー ス 管 理 シ ス テ ム (DBMS) と い う . DBMS に は デ ー タ 重 複 を 排 除 し (デ ー タ の 共 有 化 ), 物 理的にデータを集中管理し,データ重複の問題点を解決 する.統一したデータ定義,データ操作の非手続化によ りデータの利用方法を容易にする等の役割がある. 方法と結果 こ の 研 究 で は ,デ ー タ ベ ー ス 管 理 シ ス テ ム に MySQL, Web ペ ー ジ の 記 述 に PHP を 用 い た . ま た , 検 索 で 必 要 な 大 学 の デ ー タ を Excel で 作 成 し CSV 形 式 で 出 力 し て MySQL に 取 り 込 む 事 と し た . 初めに,データベースの設計を行った.中間発表の時 は 1 つのテーブルに複数のデータを持たせていたが,大 学のテーブル,キャンパスのテーブル,系統のテーブル の 3 つのテーブルを作成し,そこに複数のデータを持た P / 図1 検索の処理の流れ P 10 せることにした. その後,以前とったアンケートの結果を基 に検索フォームを作成し,そこから項目に対 する検索を順番にかけるプログラムを作成し た . こ の 処 理 の 流 れ を 図 1,作 成 し た 検 索 フ ォ ー ム を 図 2, 検 索 し た 結 果 を 図 3 に 示 す . フォームからのデータ追加時に,キャンパ 図 2 スのデータを追加できないというトラブルが 検索画面 起きた.原因として,制作当初から作成したテーブルを用いていたため,キャンパスのテ ー ブ ル の 大 学 コ ー ド に 誤 っ て Primary Key の 指 定 を し て い て , 「 主 キ ー 」に 指 定 さ れ た 列 の 中には、同じ値が 2 つ以上存在できないので追加することができなかった. 考察 現段階では補修機能が万全では無く,データの追加 は で き る も の の 更 新 (変 更 )は フ ォ ー ム か ら で は な く デ ータベース側から操作しなければならない. 大 手 予 備 校 の 河 合 塾 が 運 営 し て い る Kei-Net の 大 学 検索システムと今回制作した検索システムを比較する と,使用している言語やデータベースは異なっている が,検索項目の数や,検索の自由度に大きく差があっ た.また,やはりこちらも学部の検索ではなく系統の 検索を用いていた.比較から,学科も系統分けをして 図 3 検索結果 さらに分岐して検索できるようにし,キーワード検索を行えるようにするなどの改善をし ていく必要があり, 「 基 本 → 発 展 応 用 」す る こ と で よ り 有 用 な 検 索 シ ス テ ム の 構 築 が で き る と考えられる. 参考文献 1 ) (株 )ア ン ク 著 : PHP の 絵 本 2 ) 山 田 祥 寛 著 : 独 習 PHP 翔泳社 翔泳社 ( 2007 年 ) ( 2006 年 ) 3 ) WINGS プ ロ ジ ェ ク ト 著 : 基 礎 PHP インプレス ( 2004 年 ) P / P 11 課題名 非接触型充電器の開発 発表者氏名 石川隼人 指導教員 仲道嘉夫 佐藤綱祐 棚橋真美 竹中航 宮岡拓実 宮本克真 背景・目的 携 帯 電 話 や デ ジ タ ル カ メ ラ ,iPod な ど ,充 電 池 を 使 用 し て い る 機 器 が た く さ ん あ る 。こ れらの機器を充 電する際,非接 触で充電で き るととても便利 である。そこで 2 班に 分かれ て,電波送電(以下Ⅰ)と電磁誘導(以下Ⅱ)の 2 通りの送電方法で,非接触で充電する 方法を研究した。 理論 Ⅰ .マ イ ク ロ 波 は 電 波 の 中 で も 特 に 電 力 を 伝 え や す い も の で あ り ,そ れ を ア ン テ ナ で 受 電し,充電する。身の回りでマイクロ波を発振している電子 レ ン ジ( 周 波 数 2.4[GHz])を 送 電 部 と し て ,受 電 部 の ア ン テ ナの製作・研究を行った。 Ⅱ.電磁誘導を応用した相互誘導の原理を利用。1 次コイ ルに流れる電流の変化量に応じて,2 次コイルに誘導起電力 が発生する。実用的だが,磁界の強さは、電磁気のクーロン の法則により距離の 2 乗に反比例する。 方法と結果 Ⅰ .様 々 な 種 類 の ア ン テ ナ を 試 作 し た 結 果 ,両 面 基 板 に パ ターンを描くパッチアンテナが最も良いことがわかった。パ 図 1 四角型パッチアンテナの スミスチャート 図 2 四角型パッチアンテナの形状 ( 切 り 込 み 30[ mm ]) ッチアンテナの性能を上げるため,シミュレータを使用して特 性を測定した。それに基づいてアンテナを作成し,受電したも のは 2 倍電圧整流回路をすぐに通して直流へ変換した。 実 験 は ア ン テ ナ を 電 子 レ ン ジ の 中 に 入 れ ,電 圧 計 で 測 定 を し た。通常の四角型のほかに円型のパッチアンテナもシミュレー トし,同様に実験をした。四角型のパッチアンテナのシミュレ ー シ ョ ン 結 果 を 図 1 に ,形 状 を 図 2 に 示 す 。 ま た ,給 電 点 の 位 置 を 変 え る た め に 切 り 込 み を 5mm ず つ 加 え て い き , 電 圧 の P / P 12 変 化 を 調 べ た 。そ の 結 果 を 図 3 に 示 400 350 す。 電圧[mV] 300 250 四角型 円型 200 150 Ⅱ.実験により、伝送効率は送 電・受電部間距離の 2 乗に 反比例す 100 る事、1 次コイルに入力する波形は 50 0 0 正弦波より矩形波の方が伝送効率・ 5 10 15 20 25 30 35 40 45 50 長さ[mm] 電力が高いことが分かった。従って 図3 切り込みの長さと電圧(抵抗3[kΩ ]) 受電部はなるべ く距離を縮めるために受電部を送電部に入れる「挿入型」にした。 充 電 対 象 は 取 り 扱 い が 容 易 な 充 電 池( eneloop 単 3 型 :2000mAh) を使用し,その周りにコイルを巻いて整流・平滑回路を取り付け, ス ペ ー サ ー で 覆 う 事 に よ り 1 つ の 電 池 と し た 。製 作 し た も の の 形 状 を 図 4 に 示 す 。 送 電 部 は , 74HC00 に よ る 発 振 回 路 ( 図 5) 及 び MOS-FET に よ る フ ル ・ ブ リ ッ ジ 回 路 ( 図 6) を 製 作 し , そ の 出 力 図 4 を 1 次コイルに接続した。 受電部外形 Vss コイルへ 考察 図 5 発振回路 Ⅰ .図 3 よ り ,給 電 点 は パ ッ チ ア ン テ ナ の 中 心 よ り 多 尐 ず GND らすことにより高い電圧が得られることがわかった。また, 図 6 フル・ブリッジ回路 通常のパッチアンテナである四角型よりも円型の方が良い値を示した。しかし,最も高い 電圧でも充電をするにはまだ程遠い値である。 Ⅱ .自 作 回 路 を 用 い る 事 に よ り ,低 周 波 発 振 器 以 上 の 電 力 を 1 次 コ イ ル に か け て ,充 電 す る た め に 必 要 な 電 力 ( 30mA , 7V) を 得 る 事 が 出 来 た 。 し か し , 過 充 電 が 行 わ れ な い よ う に 、 ま た 電 池 を 長 持 ち さ せ る た め に は IC を 用 い た 充 電 制 御 回 路 が 必 要 と な っ て く る 。 参考文献 Ⅰ.トランジスタ技術 2003 年 11 月 号 I-Labor atory http://www1.sphere.ne.jp/i-lab/ilab/index.htm Ⅱ.トランジスタ技術 2004 年 3 月 号 フル・ブリッジ回路の設計 pp.170-171 P / P 13 課題名 UDP 通 信 を 用 い た CASE ツ ー ル の 作 成 発表者氏名 川村政晃 指導教員 西澤吉郎 田中昂文 堀達也 本間夏樹 三浦拓真 山下貴大 背景・目的 私 た ち は UDP 通 信 を 用 い た CASE ツ ー ル の 作 成 を 目 的 と し た 。 CASE ツ ー ル と は シ ス テ ム 開 発 を 支 援 す る ソ フ ト ウ ェ ア の こ と で あ る 。今 ま で の CASE ツ ー ル は ソ フ ト ウ ェ ア 開 発支援の機能のみのものが多い。しかし,現在のソフトウェア開発は分担作業が主流であ り,開発者同士の意思疎通が極めて重要である。そこで,私たちは開発者同士のコミュニ ケ ー シ ョ ン を サ ポ ー ト す る ソ フ ト ウ ェ ア (統 合 コ ミ ュ ニ ケ ー シ ョ ン 環 境 )の 作 成 を 目 指 す こ と に し た 。こ れ は 既 存 の CASE ツ ー ル に は な い チ ャ ッ ト や フ ァ イ ル 送 受 信 な ど の 多 く の 機 能を搭載した実用的なソフトウェアである。これを会社などで導入すれば,ソフトウェア 開発がより効率化され,社会貢献につながると考える。 理論 こ の CASE ツ ー ル の 根 幹 と な る フ ァ イ ル 送 受 信 の 転 送 方 法 に つ い て 説 明 す る 。デ ー タ 転 送 に は UDP を 用 い る 。こ れ は 大 容 量 デ ー タ を 転 送 す る 際 に TCP よ り 速 度 の 面 で 効 率 が 良 い 為 で あ る 。し か し ,UDP に は 問 題 が あ り ,パ ケ ッ ト が 途 中 で 破 棄 さ れ る な ど ,デ ー タ 破 損 を 起 こ す 可 能 性 が あ る 。 そ こ で , TCP に よ る 制 御 用 シ グ ナ ル ACK(acknowledgement ) を 用 い て デ ー タ 転 送 が 確 実 に 行 え る よ う に し た 。デ ー タ 送 信 側 で シ グ ナ ル を 受 信 待 機 さ せ , データ受信側でシグナルを送信する。これを行うことで,データの欠落がないかを確認す ることができ,仮にデータの欠落が発生した場合でもシグナルがインクリメントされない ので,送信側に再送依頼を出すことができる。 方法と結果 私たちはチャット,ファイル送受信,テキストエディタを統合したソフトウェアの作成 を目標とした。完成 した機能の 一覧を表 1 に 示す。チャットとフ ァイル送受 信の機能は 完 成したが,テキストエディタは通信を確立する際にエラーが生じるため検討したが完成に はいたらなかった。 当 初 ,GUI は 複 数 の ウ ィ ン ド ウ を 表 示 し ,処 理 を 別 々 の ウ ィ ン ド ウ で 行 う よ う に 考 え て い た 。し か し ,プ ロ グ ラ ミ ン グ が 困 難 だ っ た た め ,タ ブ パ ネ ル を 採 用 し た 。完 成 し た GUI の画面を図 1 に示す。タ ブパネルには 作業を 分割して処理し やすい,タブを 切り替えて 画 P / P 14 面 を 広 く 使 え る な ど の 利 点 が あ る 。 レ イ ア ウ ト は 各 機 能 を 動 作 さ せ る タ ブ と IP ア ド レ ス な ど の 情 報 を 入 力 す る タ ブ の 2 つ に 分 け た 。GUI は 機 能 の 変 更 が な い 限 り ,完 成 し た も の と し て 扱 っ て い る の で , GUI と 個 々 の プ ロ グ ラ ム の 統 合 も 完 了 し た 。 表 1.完 成 し た 機 能 チ ャ ッ ト (テ キ ス ト ,イ メ ー ジ ) ファイル送信 ハ イ ブ リ ッ ト P2P 方 式 ファイル受信 考察 このソフトウェアは目的通りの多機能なもの となった。しかし,未だにエラーが残っており 現在はそのバグ取りを行っている。 現在,クライアント-サーバ間での接続の確 立は成功している。一時的に通信を開始すると エ ラ ー が 発 生 し た 。 原 因 は read()メ ソ ッ ド が 待 機していないことによる空配列の参照によるも のだと考えられる。 他に一度クライアント-サーバ間で接続を確 図 1.作 成 し た ソ フ ト ウ ェ ア の GUI 立したのちにクライアント側で文字列受信 (read()メ ソ ッ ド )を 行 う と ,サ ー バ に 対 し て 接 続 要 求 を し て し ま う た め エ ラ ー が 生 じ る 。接 続が確立した後,多重の接続要求をしないようにする方法を検討中である。 一つひとつの機能を作成し完成させることは,そこまで難しいことではなかった。しか し,すべてを統合したプログラムとして動作させる,つまりマルチスレッドでプログラム を動作させ,いつでもその機能を利用できるようにすることは予想以上に困難を極めた。 参考文献 Joseph O’Neil: 独 習 java, 翔 泳 社 高 橋 麻 奈 : や さ し い java, ソ フ ト バ ン ク ク リ エ イ テ ィ ブ 高 橋 麻 奈 : や さ し い java 活 用 編 , ソ フ ト バ ン ク ク リ エ イ テ ィ ブ 小 高 知 宏 : Tcp/ip ネ ッ ト ワ ー ク プ ロ グ ラ ミ ン グ , オ ー ム 社 山 下 浩 一 : Java ア ド バ ン ス ト テ ク ニ ッ ク 逆 引 き 大 全 500 の 極 意 , アリアスコンピュータ P / P 15 課題名 ノイズキャンセリングを応用した回路 発表者氏名 金井健一朗 指導教員 仲道嘉夫 川合正宏 勅使川原大輔 鳥海信之介 松坂駿平 背景・目的 きれいな音で音楽を聴く方法としてノイズキャンセリング ( 以 下 NC) と い う 方 法 が あ る 。 我 々 は そ の 仕 組 み に 興 味 を 持ち、研究することにした。 図1 NC ヘ ッ ド ホ ン 理論 NC 機 能 を 持 つ ヘ ッ ド ホ ン に は マ イ ク が 内 蔵 さ れ て お り ( 図 1 ) ,以 下 の 理 論 で ノ イ ズ を 低減している。 音 楽 を 聴 い て い る と き ,我 々 の 耳 に は 聴 き た い 音 と ,周 り の 騒 音 の 両 方 …( A)が 聞 こ え て い る 。こ の う ち 騒 音 を ヘ ッ ド ホ ン 内 蔵 の マ イ ク で 集 め ,こ れ を 反 転 …( B)し ,出 力 す る こ と で ノ イ ズ を 打 ち 消 し ,音 楽 だ け … ( C) を 聴 く こ と が で き る ( 図 2 )。 + = ( A) ( B) 図2 ( C) NC の 原 理 方法と結果 ま ず ,作 成 す る NC 回 路 に 搭 載 す る 3 つ の 機 能 を 決 定 した。 コンパクトにする キャンセリングのレベルを調節する機能 危 険 音 を 判 断 ・ 警 告 す る な ど ,シ チ ュ エ ー シ ョ ン に応じたキャンセリング レ ベ ル 調 節 の 機 能 は ,OP-Amp を 使 っ た ア ナ ロ グ 増 幅 回 路 ( 図 2) で 製 作 し た 。 図2 ア ナ ロ グ NC 回 路 R f に 可 変 抵 抗 器 を 置 い て レ ベ ル を 調 節 で き る よ う に し ,実 際 に 動 作 を 確 認 し た 。 ま た ,こ P / P 16 の 回 路 で の 周 波 数 特 性 の 記 録 を 行 っ た ( 表 1 )。 表1 ア ナ ロ グ 回 路 の 周 波 数 特 性 ( 1[V]=0[dBV]) (グラフ上から順に入力、反転後、実際に 聞こえる音) ノ イ ズ : お よ そ -56[dBV] ↓ ×1/16 NC 後 : お よ そ -80[dBV] 入力 この回路を小型化・改良し,ヘッドホン に 組 み 込 ん で 同 様 の 実 験 を し た が ,う ま く 設定より 動作しなかった。 大きい音か? 3 つ目の機能はアナログ回路には実装で NO き そ う も な か っ た の で ,マ イ コ ン を 使 っ て YES プログラムで実現することにした。 消したい 使用中に危険と判断されるような音に 周波数か? は そ の 周 波 数 や 音 量 に 特 徴 が あ る 。今 回 は 、 NO それらを監視させ、危険と判断された場合 YES に キ ャ ン セ リ ン グ を や め る ,と い う プ ロ グ ラ ム と し た ( 図 3 )。 マ イ コ ン を 使 っ た 回 路 を 作 成 し ,プ ロ グ キャンセル キャンセル しない する ラ ム を 書 き 込 む 予 定 で あ っ た が ,う ま く 書 出力 き込めず作業が難航したためプログラムの 動作確認をコンピュータ上で行った。 図3 最 終 的 な NC プ ロ グ ラ ム 考察 ア ナ ロ グ 回 路 で は ,マ イ ク の 小 型 化 に 伴 い 追 加 し た 増 幅 回 路 が 機 能 し て い な い よ う な の で ,こ の 部 分 を 再 設 計 す れ ば 使 え る よ う に な る と 考 え る 。 参考文献 電子回路教科書 コロナ社 H8/300H シ リ ー ズ プ ロ グ ラ ミ ン グ マ ニ ュ ア ル 日立 P /