読者です 読者をやめる 読者になる 読者になる

数弱プログラマのいろいろ

数学が苦手なのにプログラムを書いている高専生のいろいろ

Raspberry Pi 3に電源を繋ぐだけでSSHとVNCができる環境を構築する via Bluetooth PAN

はじめに

授業でRaspberry Piを扱うことになって,できるだけ少ない配線で作業したいなと思って構築した環境です. どっちかっていうと実用ではなく学習向けの環境かも.インターネット共有はできません.

f:id:namedpython:20170415121820j:plain

環境

初期セットアップはやっぱり装備多めになりますよね〜.

これらを最終的に上から4つ(または5つ)ぐらいまでに絞ります.

やり方

普通にセットアップしていきます.

まずはRaspbianを公式からダウンロードします.割と長い.

ダウンロードできたら,イメージをmicroSDに焼いていきます.

macOSのターミナルにて

$ diskutil list
$ diskutil unmountDisk /dev/diskN
$ diskutil eraseDisk MS-DOS RASPI /dev/diskN
$ diskutil unmountDisk /dev/diskN
$ sudo dd if=~/Downloads/xxx-raspbian-jessie.img of=/dev/diskN bs=N

Nは,環境に合わせて適当にやってください.eraseDisk前のunmountは必要だったか覚えてませんが,まあ一応やっておきます.

焼き終わったらRasPiに各種I/Oと焼いたmicroSDを差して電源を投入します.

無事起動したら,左上のスタートボタンからPreference -> Raspberry Pi Configurationをクリック.

Interfaceタブから,SSHを探してEnableしておく.Localeタブから,ロケールとかタイムゾーンとか設定しとく.

設定の適用には再起動が必要なので,ダイアログに従って再起動する.

戻ってきたらコンソールを立ち上げて,update & upgradeしていきます.

$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get dist-upgrade

パスワードが初期パスのままなので変えておきましょう.初期パスはraspberryです.

$ passwd
  1. 初期パス
  2. 新パス
  3. 新パス確認

の順で打っていきます.このパスはSSHのログインにも使います.

次に,ネットワークの設定をやっていきます.コンソールエディタを使いますので,いろいろ好みはあると思いますがなければインストールしておきます.

$ sudo emacs /etc/dhcpcd.conf

こいつに追記していきます.

bnep0は,今回のメインであるBluetooth PANのインターフェースです.書いといてください.

#Bluetooth PAN with my MBP
interface bnep0
static ip_address=192.168.x.y/z
static routers=192.168.l.1

xyzは好みで変えてください.

static ip_addressに設定したアドレスは,静的に割り振られます.メモっときましょう.

次に,BluetoothMacとRasPiをペアリングします.

$ bluetoothctl
[bluetooth]# scan on

こうすると,周囲のBluetoothバイスが検知されていきます.

自分のMacが検知されたら(そのMacのの名前とアドレスが出ます),一緒に書かれているアドレスをメモっときます.以降,これをBT_Addrと呼びます.

ではペアリングです.

自分がやった時割とよくFailedとか出されたので,出た場合は後述の対処をしてください.

[bluetooth]# pair BT-Addr
[bluetooth]# connect BT-Addr
[bluetooth]# trust BT-Addr

とします. これらのいずれかでBluez.Failedとか出されたら,以下の対処を試してください.

$ pulseaudio --start
$ bluetoothctl
[bluetooth]# connect BT-Addr

これでできなかったら,もうわかりません.格闘してください.

自分はこれで成功したこともあったのですが,なぜこれで成功するのかわかりません.格闘してたら見つけました.

それでは,ペアリングが完了した前提で進めていきます.確認方法としては

  • Mac側のBluetooth設定でraspberrypiが太字になっている.

  • Raspbianの左上の方のBluetoothアイコンをクリックすると,自分のMacの名前の左にチェックマークがついている

って感じです.これらが揃っていればペアリングは成功しているでしょう.

次に,Bluetooth PANを構築します.

参考にした記事はこちら

必要なパッケージをインストールしておきます.

sudo apt-get install python-dbus

スクリプトを適当な場所にwgetし,実行権限とか与えて,BluetoothPANのリクエストをMacに送信します.

$ wget https://raw.githubusercontent.com/mk-fg/fgtk/master/bt-pan
$ chmod +x bt-pan
$ sudo chown root: bt-pan
$ sudo mv bt-pan /usr/bin/
$ sudo bt-pan client BT_Addr

Macにダイアログが出てくるので許可する.

ここで一旦Macの設定に戻ります.Macの設定からネットワーク設定を開きます.左側の窓の中にBluetooth PANが出ていると思いますが,自己割り当てアドレスとなって黄色くなっていると思います.

これを修正しなければなりません.Bluetooth PANの詳細を開き,TCP/IPタブで,IPv4の設定を手入力にします.もし他の設定とかぶったりする場合は新しくプロファイルを作ってくださいね.

そして,IPv4アドレスのところをstatic routersのアドレスにします.

サブネットマスクはおおかた255.255.255.0でしょうか.

ルーターはメインのネットワークのルーターアドレスを設定しておきましょう.

これで,黄色から緑になったと思います.

ではRasPiに戻って,コンソールでIPが振られているか確認しましょう.

$ ifconfig bnep0

これで,inetのアドレスが,static ip_addressのアドレスになっていればうまくBluetooth PANが構築できています.

それでは,電源投入後自動で構築するようにしましょう.

sudo emacs /etc/rc.local

一番下にexit 0が見えると思いますが,そこの上であればどこに書いても構いません.

先ほど実行したbt-panを,ここに記述しておきます.これにはsudoは不要です.

bt-pan BT_Addr

と記述します.

ここまできたら,とりあえずテストとしてMacからSSH叩いてみましょう.

ssh pi@192.168.x.y

これでパスワード入力まで行けば成功です.一旦sudo rebootして再起動しましょう.自動でMacとつながるかどうか試します.

RasPiが起動した10秒後くらいにもういっかいSSHを叩いてパスワード入力まで行くようであれば,rc.localに書いた自動接続もうまくいっているようです.

それでは最後にVNCもできるようにしましょう.

MacからのVNCなので,プリインストールのReal VNCではできません.別のパッケージを使います.

sudo apt-get install tightvncserver

これをインストールすると,$ vncserver$ tightvncserverエイリアスされます.

$ vncserver

と実行すると,初回は接続用のパスワード設定しろと出てくるので,設定しましょう.

設定が終わると,画面の配信が始まります.気をつけて欲しいのは,配信される画面はディスプレイに映っているものと同じではなく別ウィンドウだということです.

それでは接続してみましょう.

MacのFinderを開きます.メニューバーの移動から,一番下のサーバーに接続をクリックします.

ダイアログが出てくるので,アドレス欄にvnc://192.168.x.y:5901と打って接続します.:5901もちゃんとつけてくださいね.

パスワード入力を要求されるので,入力して接続します.すると,RasPiの画面がMacに映ります!やったね!

VNCは,あくまで第二の手段として用意しておくまでです.基本的には,必要になった時にSSHから叩いてからの接続です.もし起動時に配信したいのであれば,先ほど同様rc.localに記述しましょう.

もし配信を停止したければ

$ vncserver -kill :N

で配信を切れます.Nは,$ vncserverを叩いた時に出てくるウィンドウ番号です.

けっこう長くなりましたね.お疲れ様でした.

Bluetooth PANによる接続ですが,インターネット接続は提供できません.他のやり方でできるかもしれませんが,このやり方ではできません.

しかし,僕がなぜWi-Fi共有ではなくBluetooth PANを選んだかにはきちんと理由があって,Mac/RasPi側のWi-Fi等を食いつぶしたくなかったからです.

RasPi側に,Bluetooth PAN以外に外界へのネットワーク接続をすれば,パッケージ等のインストールSSH越しでできます.

あ,注意してほしいのですが,Mac側がスリープしてペアリングとかBluetooth PANが途切れると,他のネットワークを経由するか再起動しか接続の方法がありませんので悪しからず.

おわりに

画像とかなくてすみません.後日スクショとかつけるかもしれません.

指摘等ありましたらコメントでお願いします.

長くなってすみませんでした.あなたのRasPiライフがスマートでありますように.

ではまた.

Safariとかで出る警告『Unexpected CSS token』

はじめに

今回もGithub Issueに埋もれてるんじゃ?と思って書きます.

環境

症状

警告なのでそこまで気にすることでもないのですが,ないに越したことはないので一応対応しようと思いました. その警告は,bootstrap等のgemを利用していると出るのですが,タイトルにもある通り『Unexpected CSS token』. 10件くらいまとめて出てくるわりに,ページのスタイルが崩れているわけでもなかったので,調べました.

解法というより解説

github.com

おそらく調べると一番上かそこらに表示されるページなんですが,Issueスレたどるのって結構めんどくさかったりだいたい英語だったりするので翻訳も含めて解説しちゃいます. 大したことでもないんですけどね.

というのも,この警告はIE8やそこらへんの特殊なブラウザへのスタイル適用のためのコードが,Safariだと警告されて出てくる.ということらしいのです.

試しに,SafariのユーザーエージェントをIE8に変えてやってみたら警告は綺麗さっぱり消えました.

ユーザーエージェントは,開発タブ > ユーザーエージェント > (各エージェント) で変更できます.

開発タブがない場合は,メニューバーのSafari > 環境設定 > 詳細 の一番下にチェックボックスがあるのでそこにチェックです.

おわりに

今更ですが,生のWebをきっちり触ってからRails触りたかったと後悔しています. ではまた.

RailsのUpdateがうまくいかない

はじめに

トラブル解決というわけでもなく,格闘の結果わかったことを書きます. とある予約システムを作っていて,Submit毎のリダイレクトがうざいので非同期にしようと考えてremote: trueとかやって周りを調整してました. お客さんが触る部分はわりとすんなり非同期にできたんですけど,管理画面(ステータス表示・変更)を非同期にしたら500(Internal Server Error)吐きまして,そういう話です.

環境

  • Rails 5.0.0.1
    • development
    • SQLite3

超適当ですすみません.

症状と格闘の結果

冒頭で書いた通り,500を吐かれました.これはブラウザ側で見たエラーコンソール.じゃあRailsのログには何が残っていたかというと,

...
(1.0ms) rollback transaction
...
ActiveRecord::StatementInvalid (SQLite3::BusyException: database is locked: commit transaction):
...

死ぬほど省いてますがこんな感じ.rollback?! BusyException?! リダイレクトしないようにしただけで?!と思いながら格闘開始.

database is lockedから見るに,アクセスが衝突したんだろうな〜と思いながらエラー名コピペサーチでビンゴ.なんで衝突したのかの究明へ.

  • 作成Submitはめちゃすんなりできる
  • 更新Submit&Redirectはいける
  • 更新Submitは死ぬ

これらとのコードの違いを見ていきながらデバッグしていった.

得られた結果

という感じになりました.productionで試しても良かったのですが,「まぁ管理画面くらいリダイレクトしようや」とサボローがいったので保留. 他に読んだ記事はこれくらい

最近テストコードは書くようになりましたが,デバッグは雑ってよく言われるのでおそらく解決策は存在すると思うのでもう少し格闘します.

おわりに

Atomのterminal-plusの記事がよく読まれていてめっちゃ嬉しいのでトラブル解決系書きたいんですけど,そこまでトラブルに出会わないので書けません. そういえばMacBook Pro(Late-2016)買いました.またなんか開発したいです. ではまた.

Atomのterminal-plusが動かないトラブル

はじめに

久しぶりの記事です.そして新年ですね.あけましておめでとうございます.
今回の記事についてですが,解決法がterminal-plusのIssueに上がってて自分の環境では解決したのですが,もしかして他のIssueに埋もれて見えないんじゃないかと思って記事にしようと思いました.
こういう技術系の記事ってQiitaの方が良かったりするんですかね...(小声)

環境

現時点での環境です.実際のトラブルはもう少し下のバージョンだったかもしれません.

症状

検索に引っかかるようにここに症状を書きだしときます.
英語で検索かける人向けにterminal-plus not workingとかいれとくといいのかもしれませんね.
症状は,Atom内でterminal-plusを起動しても入力待機してくれない(カーソル点滅もない)というものです.
自分はちょっとだけprofileをいじったbashを使ってるのですが,terminal-plusは各個人の環境と同じシェルをAtomに出してくれます.
f:id:namedpython:20170101181829p:plain
macOS上のターミナルの画像です.変なカスタムをしてても...
f:id:namedpython:20170101182334p:plain
ちゃんとそのまま出てくれます.
今回の症状は,
https://cloud.githubusercontent.com/assets/17022349/20955206/91868450-bc41-11e6-8c56-e17927dc0240.png
このままの状態で動かないものです.これは入力待機状態ではありません.正常なterminal-plusの動作は,各環境でのシェルと同じものになっているはずです.先ほど自分の環境の画像を出したのはこれを説明するためです.(もちろん,zsh等使っている人はそれが出ますよ!)

解決方法

いちおうterminal-plusのGithub Issueに書いてあることなのでリンクを載せておきます.
Issueのタイトルにもある通り,temporary fix(一時的修正,要は応急処置)なので,修正リリースがくると思います.もうきてたりして...
github.com
まず,メニューのAtom -> 環境設定 -> パッケージ -> 検索欄[terminal-plus]でパッケージを選択します.
f:id:namedpython:20170101185005p:plain
次にterminal-plusのパッケージ画面から,View Codeをクリックします.
f:id:namedpython:20170101185306p:plain
Tree Viewからpackage.jsonを選択します.
f:id:namedpython:20170101185412p:plain

編集画面47行目あたりに,

"pty.js": "git+https://github.com/jeremyramin/pty.js.git#28f2667",

とあると思います.これを,

"pty.js": "git+https://github.com/jeremyramin/pty.js.git",

に書き換えます..git以降を削ればOK.この時点ではまだ治っていません.
ターミナルを開いて,次のようにコマンドを打ちます.コマンドから見るにパッケージのリビルドですかね.

$cd ~/.atom/packages/terminal-plus/
$npm install
$apm rebuild

そしてAtomを再起動.これで治ると思います.

$npm install

でエラーが出た人はNodeJSが入っていないかもしれないので

$brew install node

とかでNodeJSをインストール.

$apm rebuild

でエラーが出た人はシェルコマンドが入っていないかもしれないので,メニューのAtom -> シェルコマンドをインストール でインストールしましょう.

おわりに

親切でやわらかい解説を心がけました.用語間違ってたらすみません,指摘してくださるとありがたいです.
つい最近までAtom.appを開いて使っていたのですが,あれだと環境変数参照できなかったりするんですね.LaTeXコンパイルができなくてめっちゃ悩んでました.コマンドラインから起動するようにしたら治りました....
今年もプロコンとかいろいろ頑張っていきます.
ではまた.

rvmからrbenvへの移行ごにょごにょ

はじめに

ここ最近Ruby on Railsに触れる機会を持って、環境構築で遭遇した面倒thingとその解決法を書き留めます。
CeylonとLAIは保留です。

面倒thing

遭遇したのはrvmからrbenvへの移行で起きた面倒thingです。
今回Ruby on Railsに触れる以前にどうやらRubyを触ろうとした自分がいたらしく、rvmでのバージョン管理を採用していました。
しかしRailsでのRubyを含めるとなるとrbenvの方が都合がいいっぽい(自分調べ)ので移行を決めました。
環境はOSX 10.11.5で、Homebrewが入っている前提です。
zshとかは使ってません。普通にbashです。
ちなみにrvmの導入法は覚えていません。

以下は

$rvm seppuku
$rm -rf ~/.rbenv
$brew update
$brew install rbenv ruby-build
$rbenv install i.j.k
$rbenv install x.y.z

とかを叩いた後の動作です。

簡単に言うと

$rbenv global i.j.k

と叩いても

$ruby -v

でバージョンの変化が確認できなかったというものです。

あっているかわからない解説と一緒に叩いたコマンドを並べます。


うまく動いていない~/.rbenvを消します

$rm -rf ~/.rbenv

もとのやつをクローンします

$git clone https://github.com/sstephenson/rbenv.git ~/.rbenv

~/.bash_profileになんか書きます。

$emacs ~/.bash_profile
...
export PATH=.:~/.rbenv/bin:$PATH
eval "$(rbenv init -)"

と追記します。もし他にPATHに追加しているものがあればそれも一緒に書いてください。
自分の場合はライブラリがまとめてあるディレクトリへのパスが書かれています。

先ほどの.rbenvを消した動作の影響で

$rbenv global i.j.k

とかができないので

$rbenv install i.j.k

を必要なバージョンごとに行います。

インストール完了後に

$rbenv global x.y.z
$rbenv rehash
$ruby -v

すると、バージョンがちゃんとx.y.zに変わっていると思います。

おまけに、Rails 5.0.0.rc1の導入法もつけときます。
5.0.0.rc1はruby-2.2.2以上が条件なので

$rbenv install 2.2.2
$rbenv global 2.2.2
$rbenv rehash

もしくはそれ以上のバージョンのインストールを行い、必要に応じてglobal、localをわけてバージョンを設定します。
ちなみに僕は2.3.1を導入しました。
そのあとgemを使ってrailsの導入をします。

$gem install rails -v 5.0.0.rc1

以上でできると思います。
gemの管理はbundlerでやるとかなんとか。
できなかったらごめんなさい、何か指摘をいただければと思います。

おわりに

特に難しいことでもないですが忘れないように書き留めておきました。
Ruby on Rails、思想とかバックグラウンドの動作がなかなか魅力的なので頑張って勉強していきたいと思います。
Procon27もそろそろ書類提出の時期に入ってきました。どちらかというとそっちがメインなので頑張りたいと思います。
ではまた。

Ceylonを触ってみる

はじめに

この記事はプログラミング言語『Ceylon』についてです。
聞いたことない方はこちらをご覧になってください。
検索してみて思ったのは、日本語ドキュメントが少ないなってことでした。
そこらへんのきっかけみたいなのも含めて記事を書いていきたいと思います。

きっかけ的な

この記事を書こうと思ったきっかけは、日本語ドキュメントの少なさや記事の古さにあります。
別に英語のドキュメントでも読めますが、やはり日本語で書いてあったほうが見返したときもわかりやすいな〜と。
他にも [Ceylon 入門]とか、[Ceylon コンパイル 実行]とかで検索しても目当てのものが出てこなかったり古かったりしたんです。
まぁ少なかったり古かったりするなら自分で書こう、と思ってHello Worldまでなんとかできるようにして記事を書くに至っています。

Ceylonという言語を知ったのは今日の昼です。
僕「(マルチパラダイムってよく聞くけど知らないな... 聞かれて知らなくて恥ずかしいのもなんだし調べとこう)」
Wiki「複数のプログラミングパラダイムをうんたらかんたら」
僕「(プログラミングパラダイムって略)」
Wikiオブジェクト指向型とか関数型とかうんたらかんたら」
僕「(オブジェクト指向言語って他に何があるんだ)」
WikiJava-1995年、C#-2000年、Ceylon-2011年......」
僕「(Ceylonってなんだ)」
WikiJavaの良いところ悪いところを意識して作られたRedHat社製の言語だで」
僕「やるしかない」

って感じで知りました。出会いはいつも突然ですね。
きっかけはここら辺にして環境導入へ行きますね。

環境導入

僕はMacBook Air(13-inch, Mid 2013)でOS X El Capitan v10.11.4です。
Homebrew導入が前提ですよ。Homebrew導入自体のドキュメントは腐るほどありますしコマンド一発なのでここには載せません。
Homebrewが入っていれば導入はいたってシンプルです。

$brew update
$brew install ceylon

Homebrew自体のインストール場所は特にいじってません。
Homebrewのインストール場所は変えるべき、と言っているサイトもありますがそこらへんはノータッチ。
Ceylonは公式でIDEを持っていますがEclipseプラグインという形で配布されています。
僕はIDEでの開発はあまりしない上にEclipseはあまり好きではありません。ここではコマンドライン上での話をしますよ。

さてたったの2コマンドだけで導入が完了しましたが、こっからが問題です。
きっかけにあった通り、ネットにあるドキュメントは結構古いです。その上、割と新参言語故の言語仕様の変わり方の速さが目立ちます(?)。
つまり、そのドキュメントのサンプルコードやコマンドを打っても動作しないってことが起きるんです。
ということでバージョン確認!

$ceylon --version

はいシンプル。この記事を執筆した当時は

ceylon version 1.2.2 13ebb05 (Charming But Irrational)

と出ましたよ。v1.2.2のbuild-13ebb05といったところでしょうかね。

では次にHello Worldプログラムの作成、コンパイル、実行に行きましょう。

書いてみよう

まだ完全には理解していませんが、とりあえず成功例として書いておきます。
まずはじめに言っておくと、この言語はディレクトリ単体ではおそらく動きません。
プロジェクトフォルダを作り、それなりに適切な位置にソースコードを置いてコンパイルをする必要があるようです。

ディレクトリ階層の表現の仕方をどうすればいいかわからないので適当に書きますがこんな感じです。

Hoge/Ceylon/ProjectFolder/source/source.ceylon

というようにソースコードをおきます。
source.ceylonの中身はこんな感じ。

shared void run(){
	print("Hello, World");
}

カレントディレクトリはProjectFolderとします。
ちなみにsharedはJavaでいうpublicみたいなもんです。
コンパイル

$ceylon compile --source=./source source/source.ceylon

で行います。コンパイルが完了すると

Note: Created module default

というメッセージが出ました。
意味はまんまです。『defaultって名前のモジュール作ったよ』
ではここで

$ls

しましょう。すると

modules source

と出ます。新しくmodulesというフォルダが生成されました。

$ls modules/

とすると

default

と出ます。これがモジュールってやつみたいですね。
では実行してみましょう。
実行は

$ceylon run default

です。少しすると

Hello, World

と出ました。成功です。
いろいろ試行錯誤しててわかったことは、

  • $ceylon runコマンドを使って実行するにはrun()の宣言が不可欠
  • run()はsharedでなければならない
  • ちょっと変なコマンドを打ってみるとJavaの例外が出てくる

ってことぐらいですかね。まだまだ勉強が必要そうです。

まとめ

Hoge/ProjectFolder/source/source.ceylon
$ceylon compile source=./source source.ceylon
  • 成功メッセージは
Note: Created module default
  • 実行は
$ceylon run default

って感じですかね。

おわりに

いかがですか、この記事2016年ですよ。Ceylon2011年生まれですよ。
この記事が少しでも多くの人の役に立てたらうれしいです。
引き続きCeylonに関しては勉強を続けて、何かあったらまた記事にします。
そろそろ全国高専プロコン募集要項配布なので忙しくなりそうです。そっちも頑張りたいと思います。

ではまた。

第二回情報処理学会アクセシビリティシンポジウムに参加しました

はじめに

こんにちは、3記事目ですね。
僕は春休みに入りました。この休みにバイトでもして懐を温めたい今日この頃。
本日、お題の通り情報処理学会の研究発表会に参加しました。
そこで考えたことを適当にずらずら書いておきたいと思います。
一応リンクを貼っておきます。
ipsj-aac.org

本文

内容ごっちゃなので章題は本文とさせていただきます。

PCを持ち込んだわけではないので詳細なことは書けませんが、適当に内容をリストアップします。

  • 競技用義足について

SONY CSLの方が発表してくれました。
競技用義足を開発する過程での課題や起こった議論について、競技用義足の技術を一般の義足へ活かすことについてでした。

  • 障害者向けのスポーツについて

ふたりの教員(?)の方が発表してくれました。
障害者スポーツにおける課題や、スポーツによる教育の有用性や期待についてでした。

  • 障害者の就労について

ACE(Acsessibility Consortium of Enterprise)という、企業アクセシビリティコンソーシアムの方が話してくれました。
障害者が就労する際の課題や、企業側の課題、それを支える技術についてでした。
会場を2つに分けたディスカッションも行われました。
ホームページはFacebookに移行するらしいですが以下に貼っておきます。
www.j-ace.net

  • 障害者と音楽について

いろいろな方が話してくれました。
障害者向けの個人製作における課題とその可能性、聴覚障害者が音楽を聴くこと、様々な事柄の「可聴化」による可能性についてでした。

すんごい雑に書くとこんな感じです。
これを見ると薄っぺらいですが、実際はもっと重厚な内容でした。
正直後半は恐ろしく眠かったですが、貴重な体験ができました。

ではここからは考えたことについて発表の内容と軽く絡めて述べたいと思います。
思いついたことだけスマホにメモする形で話を聞いていたので、メモの内容を追って思い出しながら書きます。
ただの思いつきで細かいことは考えずにずらずら書いているので特に掘り下げたことは言いません。

まず最初に僕は、
・人工視野(論文等あり)
→根本から解決できる

と書いてます。障害者スポーツについて書いたはずです。
というか視覚障害者全体についてですね。
その場で思いついてぺぺ〜っと調べて書いただけですが、もし製品化等できるのであればかなり有効な技術だと思います。
人工視野については検索してもらったほうが詳しい情報は出ますが一応概要というかそれっぽいものを述べると、
外部から脳に電気信号を送って映像を見せる技術です。

これだけ聞くとかなりすごい技術じゃないですか?それにもう実現してるそうです。
ですが、視覚障害について研究している人がいる中でこの技術の話が出てこないということはおそらく何らかの理由があるのではと思います。
それでも一応有効な技術なのでは?と思いここに書きました。

次に僕は、
・筋肉・骨等の動きの触覚による再現
-触って動きを感じることができる人形
-(模範となるモーションにおける)筋肉の力の入り方等を電気信号で感知、再現

と書いています。障害者スポーツにおける課題についてですね。
発表の中で、「視覚障害者は模範となるフォームが見えないので、上達が難しい」というような内容の課題が挙がりました。
そこで、考えたのがメモの内容です。触ることでフォームがわかればいいのでは?と僕は思ったんでしょう。
どこで力をいれてどこで力を抜くのかや、フォームにおけるコツなどが視覚障害者では難しいという課題も、これが実現すればもう少し楽になるのではと思います。

次は、
・オフィスの仮想化

と書いています。障害者の就労についてですね。
通勤が難しい障害者が在宅で作業することにおける課題で、「職場の雰囲気でないため、効率が上がらない」というような課題があったのでこれを書きました。
VRまたはARを用いて、周辺の社員の再現、会議室の一席に自分がいるような映像を与えればいいのでは?といった感じでこの考えが出ました。

次は、
・企業での障害者向け会社寮

と書いています。これも同じく就労についてです。
通勤に人一倍エネルギーを使うのであれば、会社寮の利用で一番かなと考えました。
この考えは、実家暮らしでのサポート、コスト等を抜いて考えています。ですが、同様のサポートを会社寮で、といった形にすればいいのでは?という考えです。
単純に通勤における問題を取り除くのであればこれが一番有効でしょう。

次は、
・マルチチャンネルサウンドにおける発生位置の可視化
-ここから音が出ている、こういう音が出ているという情報

と書いています。これは聴覚障害者が音楽を聴くことについてですね。
聴覚障害者からの意見として、「グループで歌っている場合において、誰が歌っているかわからない」というものがありました。
この解決法として、これまたVRやARを用いて音の可視化をすればどうか?という考えです。
近年の音楽はマルチチャンネル化が進み、例えば演奏しているものを録音するような音楽であれば「この楽器は一番奥で〜この楽器は手前で〜」というような音の位置を表せるようになってきました。また、DTM(Desk-Top Music)のような、PCで作る音楽でも音の位置が存在します。この、「音の位置」を映像として可視化すれば音楽だけでなく日常生活でも助けになるのでは?と考えています。位置だけでなく、色を使った音の高さなども表せれば、より健常者に近い体験ができるのでは?と思います。

おわりに

以上が今日僕が考えたことです。まとまってない上に雑でしたが、自分としてはいろいろな考えを深められた1日でした。
こういうイベントはとても素敵だとは思うんですが埼玉県民からすると交通費等のハードルが高くてなかなか行けません・・・。
今回は、学科プロジェクト出費での参加だったのでありがたかった感じです。

何かあったら適当に記事にするのでよければ読んでください。
ではまた。