ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

紙にはさみを1回入れて、いろんな形を作る方法

2016-10-18 16:45:13 | ネットワーク
おもしろそうなので、URLをメモメモ

紙とハサミで遊ぼう
https://dl.dropboxusercontent.com/u/41577927/20121014introductionCutOrigamiBetaMoto.pdf


つづき

https://dl.dropboxusercontent.com/u/41577927/20121103CutOrigamiPolyhedrons.pdf

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

なぜネット上にはデマや陰謀論がはびこるのか

2016-10-18 10:38:11 | ネットワーク
長いから、あとでみる

なぜネット上にはデマや陰謀論がはびこり、科学の知見は消えていくのか:研究結果
http://wired.jp/2016/10/16/conspiracy-theory/



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

IoTでのPIC、mbed,Arduino,Raspberry Piの使い分け

2016-10-17 16:48:24 | Weblog
思うところを書いてみる。なお
  PIC:安いマイコン
  mbed,Arduino:高性能なマイコン
  Raspberry Pi:シングルボードコンピューター
と考えて、一般化してもいい


【まず、IoTで使うデバイスと要件】

最近のIoTでは、GWを使う方法が主流となっているようだ。
そこで、マイコンを含めたコンピューターを使う場所は大きく3箇所ある
 ・センサー部分
 ・GW部分
 ・クラウド上
ここで、クラウドをmbedやRaspberry Piでは一般にやらないと思うので、
センサー部分とGW部分について、以下、要件を考えて見る

(1)センサー部分
 センサー部分は、
   センサー
   マイコン
   トランシーバー(有線・無線)からなる
 マイコン部分は、センサー部分の情報を受け取り、トランシーバーへ、
その情報を流す部分の役割を担う。
 センサー部分は、アナログまたはデジタル(GPIO)またはシリアル(I2C)。
 トランシーバーへはUARTでつなぐのが多い
 センサー部分は、大量にあるので、マイコン部分は安くする必要がある


(2)GW部分
 GW部分は
  トランシーバー
  処理部分:マイコンやボードコンピューター
  Ethernet(有線または無線Wifi)からなる
 GWは、トランシーバーからセンサー情報を受け取り、
 インターネット形式に変換して
 クラウドないしは、どこかのサーバーへデータを流す
 データを処理書く尾することもある。
 トランシーバーからはUARTが多いが、複数の口を持っていると便利なこともある
 GWは、センサーほど大量に必要なわけではない。

【要件に合った選択】

(1)センサー部分
 多くをばら撒くのであれば、値段の安いPICになる。100円くらいからあるから。
 UART(USART,EUSART)はついている。
 多くをばら撒く場合、他の選択肢だと、相当高くついてしまう。

(2)GW部分
 いろんな通信を複数の口でサポートという点では、mbedがいい
 ただし、インターネットに送るだけならいいのだが
 (mbedの場合、イーサネット接続キットなどが出ている
 送受信でHTTPサーバーを建てるとなると、現時点では、Raspberry PiのようにLinuxが入っていたほうがやりやすい。

【Arduinoは?】
 じゃ、のこったArduinoは?ということになるが、ちょこっとしたものを
作るのにはいいかもしれない・・・


・・・って、ごめん、ご期待に添えない回答かも


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

JavaEEはリアクティブ、マイクロサービスに行くみたいよ(MVCはぶっち)

2016-10-16 13:08:13 | JavaとWeb
きのう(10月15日)JavaOne2016報告会に行ってきた!
その内容をメモメモ
(表題の件は、中ごろの寺田さんの発表の印象)




■ごあいさつとOverview
JavaOne サンフランシスコ 2016年9月18日~22日
・セッションのほうが中心:テクニカルカンファレンスとして成熟
・土曜日:JavaOneForKids 金曜日:Javaチャンピオン サミット
・Java Your Next(Cloud)
 クラウドに向かうぞというのは、だれでもわかっていること
 キーノート
  1時間丸まるゲストスピーカー:火星に行く話
 ジョージサーブから
  JavaSE9は4ヶ月遅れる
  Dockerコンテナベース:現在のインストーラーベースに加え
   →詳細はわからない
 アニールガー:JavaEE系
   →詳細は寺田さんへ
   EE8リバイス、
   EE9の提案
     来年末までにEE9の骨組み
     18年末までには、マイクロサービス化されたもの提供
 そのために2016年
   コミュニティに提案
 日本からの登壇者 5名
   松田、損保ジャパン、富士通、日立、NEC
   木曜日、コミュニティーキーノート、
    スターウォーズの学芸会のり(JUGのリーダーとか
     ゴスリンさんは台本よみまくり!
 JavaOne4Kids
 サーベイ:glassfish.org (英語で)
 来年は10月1日~5日

■JavaSE Feedback
・スライドは公開予定です
・自己紹介
 HeapStatsの開発 JavaのHeapのプロファイリング
  →賞をいただいた、セッションで発表

・JavaSEの未来
 スケジュール
  JDK9:延長かかった(まえに)
     全然機能完了してない
     また延長きまった 2017年7月23日
  JDK10:スケジュールあがっていない

 JDK9セッション:いっぱいあった、よかったけど・・・

・主な機能
 JDK9
  Project Gigsaw
  Project Kulla(JShell)
  Reactive Stream
 JDK10以降
・Project Valhalla
・Project Panama

・ジグソーに関して
 jarの依存性が複雑→かけたとき・同じ名前の競合
 →新しいコンテナ
 JDK内部のモジュール化;これがジグソー
  Jlink:必要最低限のJRE
 結構更新された
  英語表示でヘルプを出す(日本語だと古い)

・Project Kulla(JShell)
  REPL for Java→CLI上で実行できる
   :教育

・Reactive Stream(The Flow API)
 Reactive programming:依存j関係と関数の国あわせ
 Reactive Streams

・Project Valhalla
 バリューらいぷのシンプル化
 (今回はキャンセル)

・Project Panama
 ネイティブコードを操作しやすく

・9の変更点
 ジグソーの変更によるもの
  大半の内部APIがカプセル化
   jdepsを使って影響あるか、確認を推奨
  →ライブラリが影響受けていないか
 Critical APIはpublic

 クラスローダーメカニズム
  クラスの継承
  モジュール化してクラスパスで配置しろ
  削除済み、非推奨オプションをVMで使うと、起動できない
  3世代前まではコンパイルできるけど、それ以前は指定できない
  バージョンを確認して起動する
    バージョンの表記方法かわる
    JDKのディレクトリ構造が変わる
  Webに関して
    AppletAPI非推奨
    セキュリティ
  暗号化の変更 
   JKSからPKCS12
   証明書が変わる
  ロギング方法
   パーサーはだいたい全滅
   でこレーター
   出力方法は変わる

・範囲が狭いがささったらいたい
  非推奨APIを削除
  グラフィック関係
  Thread.stop
  toArrays()はくローンを返していたのに、
  1文字のめいめい禁止
  String 内部データがcharからbyte[]へ
   →ライブラリで
  GCの組み合わせ
   →G1GC
  jcmdの機能強化
  JavaDBの廃止など

■JavaEEの今後について 寺田さん
・マイクロソフトの社員です(^^;)
・この資料、110か20か。。。
 なぜこんなに?
  Java Oneの内容
   3つのセッションをまとめた
     知っている前提でしゃべっている
      マイクロサービス:しらないと全員置いてきぼり→つくりかえた
 エンタープライズJava→従来セッション減らされた
 マイクロサービス(300セッション中、50~60セッション)とReactiveが採用

・あジャンだ
  よかったこと
  やばいぞ
  これからどうなる

・よかったこと
 日本企業がJavaOne基調講演で数多く登壇

・JavaEE
  いい印象を持ってる人:シーン
   →オラクルさんがんばんないと・・・
 JavaEE GUARDIANS
  去年の秋ぐらいからストップした
  JavaEEの将来が危ないという情報が流れた https://javaee-guardians.io
 →オラクルさんに届いた
  アニールガー:ことしのJavaOneで語ります
   JavaEE8 MVC採用をドロップ
  クラウド、マイクロサービスは詳しく出ていない
   →やばいんじゃない?
 火星の話をするよりも、不安を払拭するためにJavaEEの話をすべき

 ブレークアウトセッションの参加で不安は払拭・戦略的にはよい方向へ
 (詳細はのちほど)

 でも、べつの不安が!!
 9月22日 ヒルトン サンフランシスコ フィナンシャル ディスとリクと
 MicroProfile https://microprofile.io/
 ベンダー・コミュニティーが集結
  ぱやら
  レッドハット
  TOM EE tomcat+webプロファイル
 →いままでJavaEEを推進してきたベンダーが入ってる

 背景
  各ベンダーの個別会話から始まった
  JavaEE技術におけるマイクロサービス対応
  マイクロサービス重要だよね!
  将来のJava大丈夫という思い
  JavaEEをよりよく、より早く
 MicroProfile1.0
  アジャイル的な方法で
 →いままでのJavaEEの仕様から出るのが長い
   →実装依存はある
  JSRに登録
  やりたいことを取り上げて、一個づつつぶしていくという考え方
 標準化には時間を要す!!
   Spring,Netflix 標準化はイノベーションではない(両方必要)
 開発の進め方・戦略はMicroProfileの方が時代に適応!!(個人的に支援)
  オープンでやっている

 MicroProfile.io or/and JavaEE 8/9

・JavaEE 戦略的にはよい!!
 個々に記載する内容は、あくまでも提案内容(未決定)!!

 Cloud対応(Microservice対応)

・2年前と世界が変わった
  クラウド化・マイクロサービス化
   マイグレーション・パスを用意
   JavaEEの後方互換性を維持
   REST(JAX-RS)は、今後重要→いままで以上
    いままでは、サーバー:待ち受け口を作るのが多かった
    今後、クライアント側:呼び出しでもRESTが重要
     非同期ノンブロッキングでつなぐ

・JavaEE9がメイン
  JavaEE8はつなぎ
  JavaEE9はクラウド

 JavaEE8の提案内容
  マネジメントAPIとJMS,MVCはドロップアウト
   JMS2.0のまま
  コンフィグレーションとヘルスチェック

 今後はリアクティブプログラミング
 リアクティブ宣言
  即応性
  耐障害性
  弾力性
  メッセージ駆動

 EE8では非同期、ノンブロッキング
 http2.0→複数のレスポンス

・JAX-RS 2.1 クライアント側の大幅な更新
 リアクティブ・プログラミング
  非同期処理の改善:実装方法の改善
  ノンブロッキング対応:リソース消費を防ぐ

  RESTでよんでいく

・JAX-RS 2.0の非同期処理(コールバック地獄)
 EE8
 JAX-RS 2.1 Completable-Future<T>を利用
  非同期処理をより簡単に、RxJavaも利用可
  Jersey(じゃーじー)では

 JAX-RS 2.1:ノンブロッキング対応

 ヘルスチェック
  サービスが生きているかどうかを監視できる

 コンフィグレーション:外部設定
  設定情報を分けて管理する
  Apache Tamayaなどを参考

 マルチ手ナンシー対応
  テナントごとにカスタマイズ
  マルチテナンシー対応:データ・アクセス
   データソースの実装も変えないと・・

 セキュリティ JSR375
  EE8とEE9(メインは9)

  OpenID コネクト

・JavaEE9 マイクロ・サービス
  ラジブさん
 マイクロサービス開発の標準にしたい
 MicroService

 今まで:モノリシック(一枚岩)
   小さなプロジェクトなら楽
   一回作ったら、変えられない
   プロジェクトの全体はあくが大変になる

 マイクロサービス
  それぞれの機能を分けて作る:疎結合
  個々のサービスで個々のプログラミング
  どっちを適用すべきか→必要なところで

 標準的な実装がない
  開発者が選択→標準化

 マイクロサービス・デザイン・パターン
  APIゲートウェイ:標準化するものではない
  サービスレジストリ・ディスカバリ
     →サービスを登録する→ロードバランサが問い合わせ
  サーキットブレーカー
     →負荷が高い・障害発生:リクエストをきる
   JAX-RSクライアントAPI拡張、アノテーション
   バルクヘッド
 ポリグロット・パーシステンス
  JPA:RDBの永続化
   →NoSQL:カテゴリーわけをしたAPI
    カテゴリ指定(Key/Valueの例)
  JPAと似たような感じ

 CQRS:データの参照と更新を分離
  分散アプリではリードはリード、ライトはライトでわける

  Tolerant Reader(寛容な読み込み)→実装者が考慮(EE9未対応)

 チェインド・サービス

 非同期メッセージング
  kafka,RabbitMQ
  pub,sub用意

 サービスインスタンス
  JavaEE9 JavaSE9のあと
       1つのJarファイル(Jigsawを使って
   A,Bが繋がっている場合、分けるとパフォーマンス悪くなる
     →プロビジョン方法の提供
   グルーピング

 コンシューマードリブン: EE9未対応
  Spring Cloud Contract、Pact

 ドメインイベント
  マイクロサービス:分散ネットワーク
  分散環境でのトランザクション

・その他
 クラウドプロバイダが提供するサービスを呼び出せる
 Auto Scale
 JavaEE9のリアクティブ対応:包括的なAPIを提供
   JDK9のFlowAPI

・動画もある(英語)

・MicrosoftがJavaOneに出展
・IBMさんがJavaをもう一度すばらしいものにしましょうよ
・コグニティブサービス

 マイクロソフトのビデオもみられる

 アイデアひとつでできる

 もうつぶやいている
 JJUG CCCで紹介したい。足を運んでくれれば・・

■JavaOne2016総括
・自己紹介
・標準Java:特に進展なし
 JavaME,JavaFXはキーノート発表なし
 JavaME:SE Embeded
・今後への懸念
 JavaEE Guardians
 ロードマップは出たけど、リリースできるの?
 問題はEEだけではない
・Make Java Great Again IBM
 IBM SDK For Javaをオープンソースへ
 OpenJ9→OpenJ9ベースのOpenJDKがでてくる
 OMRの上にかぶせてOpenJ9
 Eclipse OMR
  JITコンパイラ、GC,スレッドライブラリなど、言語に非依存な形で提供
  CRubyで提供。CPythonは公開予定有り
 →COBOLもマイクロソフトCMRと同じアイデア
 Apache Harmony論争再び?
 JavaVMがIBMを主導したい?→戦いの場でないものはオープンソースにしたい
 だれがJavaを偉大にするのか

 標準Javaが遅い:誰かが追い越していく
 OSSとコミュニティが進化を加速していく
 標準が前に進まないなら、別の標準
 コミュニティーキーノート
  エピソード21:コーダーの覚醒
  相変わらずの学芸会のり
  ベンダー主導の情報発信の場→コミュニティ交流する場
 JavaOne
  エンタープライズ職が強い

・トレンド
 DevOps,クラウド、マイクロサービス、リアクティブ
 アジャイルは常識:リリースサイクルの話
 DevOps:Jenkinsが一般的 一週回って次の課題
 コンテナ前提:Docker
  パイプライン設計、テスト時間を短くするには、メトリクスが重要
  テスト時間をどれだけ短く。メトリクス
 クラウド:使って当たり前。サーバーレス
 マイクロサービス:分けたサービスをどう管理するか
 イベントソーシング
 疎結合を優先し、非同期処理での不整合を許容する
  Amazonは処理に失敗したらクーポン出してるよ
 Reactive
  用語定義やメリットの議論が継続的
  通信するという概念がボトルネックに

・未来予測
 数千数万のサービスで構成されたシステム
  境界線があいまい
  サーバーレスの延長
 サービスの制御は、全てプラットフォームに任せる

・まとめ
 誰がJavaを偉大にするのか
  コミュニティやOSSと協業できる企業
 JavaOneはコミュニティの交流の場として機能している
  もちろん、行く価値はあります

・おしらせ
 12月3日 JJUG CCC Fall

■Road to Duke's Choice Award
・自己紹介
・Heap Stats
・おことわり:思いで話メイン。主観が入ってるかも。技術的な話しない
・Duke's Choice Award
  4つもらえる:参加チケット、Duke像、バッジ、Oracleプレスリリース登場権?
・HeapStatsって何?
  JDP:マルチキャストで飛ばす
・挑戦の歴史
 2014年のJavaOne
   申請;落選
 2016年
   再挑戦
 意識したこと
  バズワード入れてみた(IoT,ARM)
  審査員がぐっときそうな技術 JavaFX
  Javaへの暑い思い
 受賞
・連絡
  英語でメールがきます
  副賞は来年に繰り越し可能
  住所と電話番号
  授賞式まで内緒にしててね
・授賞式
  JavaOne期間中
  関係者全員で行ってよい
  事前打ち合わせなし
・トリビア
  Duke像はさわれない
  2回ステージ
  英語しゃべらなくてOK
・変わったこと
  GitHubのStar数増えた
  HeapStatsが記事にでた
・つづき
 Java Community Keynote
  HeapStatsが登場
・コミュニティの中でのHeapStats
  コミュニティ、メディア
・HeapStatsを作ったきっかけ
 Javaのメモリーリークディテクター作って
・ポリシー
 軽く・速く

■(LT)SideStory
・学芸会に参加して・・・
・ばんゆう:むこうみずのゆうき

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

竜王戦挑戦者変更と発表及びその内容

2016-10-15 22:40:06 | Weblog
背景には将棋ソフトの問題??
よくわからんので、URLをメモメモ

【将棋】竜王戦挑戦者変更と発表及びその内容についての棋士関係者の反応
http://togetter.com/li/1036206

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Myグラフィック表示器作り&mbedでQVGA,VGA

2016-10-15 12:20:49 | Weblog
128×64ピクセルのSG12864ASLB-GB(GLCD)と400×240ピクセルの
LS027B4DH01(HR-TFT)の2種類のグラフィック液晶とつながる
インテリジェントなグラフィック・コントローラを作り,
データ・ロガーなどに活用します.ホスト・マイコンは
UARTのシリアル通信ができればよいので,あらゆるマイコンから利用できます.
応用はAVRマイコン,Arduino,mbedを使います.


とのこと。後で読むのでメモメモ

スイスイ描けるMyグラフィック表示器作り (電子工作Hi-Techシリーズ)
https://www.amazon.co.jp/dp/4789845761/


■追加
●mbedでQVGAで表示する場合
SPI経由で動かす
・SPI driven QVGA TFT
https://developer.mbed.org/cookbook/SPI-driven-QVGA-TFT

mbedで液晶ディスプレイを点灯させてみる Part2 (REL225L01, QVGA液晶)
http://ameblo.jp/notsu0816/entry-10775485410.html

【TFT】SPIによるQVGA TFTの接続
http://shuji009.blog.eonet.jp/default/2011/05/tftspiqvga-tft-0162.html

mbedでQVGA-TFT液晶を表示させてみた(YouTube 音が出ます)
https://www.youtube.com/watch?v=57d0VhnqrDY


●mbedでVGAで表示する場合
uVGAIIというモノがあり、それにつなげると、VGA出力できるらしい

https://developer.mbed.org/components/uVGAII/

にHello World的プログラムデモがあるらしいよ・・・

●7セグ
7セグメントLED出力Libraryのサンプルプログラムの説明
https://developer.mbed.org/users/suupen/code/SevenSegmentLedSample/wiki/Homepage

●マトリックスLED(8X8)
マトリックスLEDキットの使い方(mbed LPC1768編)
http://www.rt-shop.jp/blog/archives/7051



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

IPAのセキュリティ啓発映像を上映した結果

2016-10-14 22:57:01 | Weblog
学校側から保護者に「子供に何の相談もなく無理矢理スマホを取り上げるのはやめましょう」と通達が

詳しくは(というか、この間のいきさつは)

企業向けセキュリティ研修ビデオを小中高生徒の親に見せた結果
http://anond.hatelabo.jp/touch/20161008183545

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Raspbery Piとmbedをシリアルでつなぎ、WindowsのTera termで確認する

2016-10-13 14:29:13 | Weblog
こんな需要はまったくない・・・かもしれないので、自分へのメモと
いうことで・・・

Raspbery Piのシリアル通信をテストしたい場合、USBを使って、Windowsにつなぎ、
COMポート経由でTeraTermで確認するということをすると思います。

ここでやりたいのは、その間に、中継サーバをおいて、

1.中継サーバーとRaspberry Piがシリアル通信する
2.中継サーバーが受け取ったRaspberry PiのデータをWindowsのTeraTermに流す
3.中継サーバーへWindowsのTeraTermからデータを投げて、それをRaspberry Piに流す

ということがしたいのです。そうすると、あとで中継サーバーでいろいろなプログラム
を組みことで、自動的にテストし、その結果をTeraTermで見れたりするので・・

つまり、こういうことがしたいわけです。


で、何を中継サーバーにするかですが、
・Raspberry Piが3.3Vなので、3.3V系で
・ご家庭でどこでもあるようなもの・・・

・・・となると、mbedのLPC1768ということになるわけです、
(ここで「いや、家庭にねーだろ!」という意見は無視します)


ということで、以下、
・Raspberry PiとLPC1768(mbed)をシリアル通信で結び
・LPC1768とWindowsをUARTで結んで、
・Raspberry piからはcuコマンドで
・WindowsはTeraTermで
送受信する(RPiで打ったものがTeraTermに表示され、TeraTermで打ったものがRPiに表示される)
を説明します。




■Raspberry Pi側であらかじめ行うこと
・cuコマンドが入ってなかったら、インストールする
 sudo apt-get install cu

・cuを使うのには、一般に/boot/cmdline.txtを直すらしい
ここ

Raspberry PIのGPIO上シリアルとArduinoの通信
http://qiita.com/ryugyoku/items/bf5fd10512c84a55d030

に書いてあるStep1,Step2は一応やった
(Step2は起動のたびに必要なのかしら?やってないけど・・)




■Windowsで必要なこと
・TeraTermが入ってなかったらいれる
 自分は入ってた

・デバイスドライバが必要なら入れる
 今行っているのはWindows7なのだが、7でもSPのいくつか、
 またWindows8では、mbedをUSBにさしても、comポートと
 して見えない(デバイスマネージャーで確認できる)
 この場合、ドライバーを入れる
 ドライバーは、mbedWinSerial_16466.exeをいれたけど、

https://developer.mbed.org/handbook/Windows-serial-configuration#1-download-the-mbed-windows-serial-port

から、取ってくるべきかも・・・
 Windows10では、うまくいくかどうかわからない。

・mbedのcomポートを確認する
 インストールが終わったあとで、mbedを指すと、USBが開くのはもちろんなんだけど、
 デバイスマネージャーで確認すると

 のようにmbedのcomポートができているので、com何番か控えておく
 (あとでteraTerm立ち上げで使う)




■mbedでの作業
 mbedでの作業は、配線とプログラミングになる。

●mbedでのプログラミング
・mbedの開発サイトへGo
 https://developer.mbed.org
・登録していなかったら、登録し、とにかくログイン
・ログインしたら、Compilerで開発環境を出す
・新しいプロジェクトを作って、そこのmain.cppに、こんなかんじでプログラミング
#include "mbed.h"

Serial MySerial1(USBTX,USBRX);
Serial MySerial2(p9,p10);

int main() {
   while(1) {
        char    c;
        
        if (MySerial1.readable())
        {
            c = MySerial1.getc();
            while(!MySerial2.writeable())
            {
                //  受信可能になるまで、ループ
            }
            MySerial2.putc(c);
        }

        if (MySerial2.readable())
        {
            c = MySerial2.getc();
            while(!MySerial1.writeable())
            {
                //  受信可能になるまで、ループ
            }
            MySerial1.putc(c);
        }
    }
}

できたら、保存、コンパイルすると、エラーがないとおもうので、
実行ファイルをダウンロードできるようになる。




●mbedの配線

ざっくり、こんなかんじ

抵抗は共に1KΩ(プルアップ抵抗)

Raspberry Pi側のTXをプルアップしてmbed側のRXへ
mbed側のTXをプルアップしてRaspberri Pi側のRXへ
GNDはそのままつないでいる

WindowsとはUSBをつなぐことで、接続している。

具体的には、ブレッドボード上に作っているんだけど、
・ブレッドボードは縦に1~30、よこにa~jまでの番号が振られ、その外側に、+、-があるけど
・ブレッドボードの30番(一番はし)にmbedをおく
  30のbにVout,30のiにGNDが来ている
・30のjを-(はじの2本の青い線のほう)のどこかにつなぐ(GND)
・30のaを+(はじの2本の赤い線のほう)のどこかにつなぐ(VOUT)
・抵抗の一方の足を+のどこか、他方を5のaにおいている(プルアップ抵抗)
・抵抗の一方の足を+のどこか、他方を4のaにおいている(プルアップ抵抗)
・Raspberry PiのGNDを-のどこかにつないでいる
・Raspberry PiのTXを5のBにつないでいる
・Raspberry PiのRXを4のBにつないでいる
・5のCを21のjにつないでいる(P10)
・4のCを22のjにつないでいる(P9)
※どこかとは、どこでもよいということ
※(数字)の(あるふぁべっと)は、ブレッドボードの穴の位置を示している




■実行!

●Windowsですること
・mbedをWindowsPCにつなぐ

・mbedのフォルダが開いたら「mbedでのプログラミング」でダウンロードした
 プログラムをmbedのフォルダにコピー

・TeraTermを立ち上げる
 シリアルのComポートの番号は「Windowsで必要なこと」で確認したCOMポート番号

●Raspberry Piですること
・Raspberry Piのcuのたちあげ
 Raspberry Piでログインしたあと、ターミナルを立ち上げる

・権限を付与(しないと、cuが「パーミッションでないど」になる)
 sudo chmod 666 /dev/ttyAMA0

・cu実行
 sudo cu -s 9600 -l /dev/ttyAMA0

 このあと、connectedと表示される。


 ここで、PCのTeraTermから文字を打つとRaspberry Pi上に、
 Raspberry Pi上から文字を打つとTeraTermに
 文字が表示されるようになる。
   

【直接関係無いけど、自分へのメモ】

ICの足番号の数え方
http://www.iccraft.com/parts/ic/package.html


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

「倒産した会社の社長って、倒産後何をしている」のベストアンサーが、いい!

2016-10-13 02:09:08 | Weblog
倒産した会社の社長って、倒産後何をしている・・・
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1290317897

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Javaのラムダ式とStream APIを聞いてきた!

2016-10-12 22:36:39 | JavaとWeb
10月12日、Java SE 8:ラムダ式 & Stream API 入門セミナーにいってきた!
その内容をメモメモ・・・




年内に資格とると、Tシャツがもらえる

●関数型インターフェースとラムダ式
・なぜラムダ式がはいったのか
JavaSE8:関数型スタイルの処理への対応
 背景:CPUアーキテクチャの変化
 マルチコア化→並列処理
 並列処理を効率化するには、関数スタイルの処理のほうが便利
  関数=入力した値に対して必ず同じ結果を返すもの
 JavaSE8:関数型インターフェースの導入
  オブジェクト指向にはなじみにくい
  でも、関数型いいよ
  関数をオブジェクトで扱う→関数型インターフェース
  →単純化できる
  パターンはjava.util.functionパッケージを使う

・関数型インターフェース
 単一のabstructメソッドを持つインターフェース(SAMインターフェース)
  staticメソッドとデフォルトメソッドはOK
   staticメソッド
   デフォルトメソッド:デフォルト実装を与える
  java.lang.ObjectのpublicメソッドもOK
 Java8の新機能
  SAM;しんぐるあぶすとらくとめそっど
   @functionalInterface をつけると、関数型と思っていることを示す
   →そうでなかったら、エラーになる

・ラムダ式の前に
 無名クラス:見通し悪い
  →ラムダ式導入

 ラムダ式
  関数型インターフェースを実装するクラスのインスタンスかを簡略化する
  ための構文
   関数型インターフェースのメソッドにフォーカスして実装を記述できる
    メソッド名は書かなくても推論できる
    変数Xはどこで宣言している 引数名

 ラムダ式は何を簡略化している?
  引数リストとメソッドを書けばOK

 →バイトコードレベルでは無名クラスとラムダ式は違う

・省略記法
  がた省略OK
  引数がない場合()
  引数1個は括弧省略可能
  1行なら中括弧も省略OK
  returnも省略OK
  ラムダ式のメソッド呼び出しは
   System.out::println
  でOK

→書き方を決めないと安定しない
 コード読みにくくなる

・汎用的な関数スタイルの操作
  基本形は5つ
  Function
  Consumer:void
  Supplier:値を返す
  Unary(ゆーなりー)Operator:演算
  pridicate:ぶーりあんで返す
 ひきすう2つの関数型bifunction

●StreamAPI
 StreamAPI
  データをパイプラインで処理するAPI
   Streamの生成
   中間操作:遅延評価
   終端操作

 Streamの作り方
  コレクションから
  配列から
  数値範囲から
  任意の要素 Stream.of

 IntStreamを使った繰り返し処理
  for文を使った繰り返し
  IntStreamを使った繰り返し
 →for文は並列処理が難しい
  並列処理は
  .parallel().forEach()とすればいい
 →100件とかならfor文のほうが早い

 中間操作のためのメソッド
  filter
  map
  flatMap
  distinct
  peek:なにもしないけど
  limit
  skipというメソッドもあるので、先頭から何個~何個というのができる

 終端操作
  forEach
  reduce 2つパターン
  collect
  min/max
  count
  以下は、ショートサーキット操作(全要素処理しないかも?)
  findFirst
  findAny
  anyMatch
  allMatch
  noneMatch

※Optionalクラス:JavaSE8から
 値がNULLかもしれないコンテナオブジェクト

・StreamAPIの例
 Personクラス:年齢50より小さい
 カンマ区切で出だす→collectでリダクション処理
 101以上200未満の要素の合計を求める:リダクション処理

 リダクション処理の考え方
 (じつは、IntStreamのmapToInt().sum()でおわる)
  IDEは型が違うことしか教えてくれない:何を変えればいいのかは教えない

・コレクションAPIのデフォルトメソッド
  removeif predicateの結果をみて、のぞく

●JavaSE8の資格のお話
 ゴールドがラムダ式つかえますか?みたいなはなし
 今35%オフで受けられる
  クレジット決済
  オラクルからチケットを買う

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Intel Edisonが入った小型のロボットSotaはLineに投稿するだけじゃない

2016-10-12 14:22:37 | Weblog

自律移動ロボ用「インテル RealSense ロボット開発キット」とかROSとか聞いてきた
http://blog.goo.ne.jp/xmldtp/e/49725ecafdce46212833733bcbfd3468

で”「人とモノ・ロボット」のコミュニケーションの可能性”のところで出てきた、
ブイストン株式会社のロボットSota(そーた)について、講演のあと、展示してあるところで
話を聞いてきたので、メモメモ

ちなみに、Sotaは

な感じのロボット(https://sota.vstone.co.jp/sota/ より引用)
この図だと、縮尺が分からないので、デアゴスティーニのロビを
思い出すかもしれないけど、あれより大きい。
(ただし、Sotaの開発元ブイストン株式会社の顧問の1人が
 ロビの作者高橋智隆氏。もう一人の顧問が、あの大阪大学の石黒先生)




【質問と答え】

Q:SotaはEdisonが入ってるの?

A:入ってる

→だから、インテルのセミナーにでていたのね。やっとわかった(^^;)

Q:SotaはLineとしか話が出来ないの?

A:そんなことはなく、いろいろできる。その中の1つとして、
 Lineへの投稿ができそうだったので、提案したかんじ。

Q:いろんな開発は、SDKでやるの?

A:SDKでもできる。ただし、込み入ったもの、たとえば今回のLine投稿の
 ようなものは、Javaで組んで、中に入れている。




【興味を持ったので追加調査】

・Sotaのページ

https://www.vstone.co.jp/products/sota/

Edison版とRaspberry Pi2があるみたい。

価格は21万円強

http://sota.vstone.co.jp/home/category/item/


コミュニティがあり
https://sota.vstone.co.jp/sota/index.php
そこのドキュメント
https://sota.vstone.co.jp/sota/resource/documents/index.php
に、操作方法とかJavaのプログラムみたいなことがあるみたい。
講習会もあるみたいよ・・・


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

「安全性論証」がソフト技術者の必須科目

2016-10-12 01:25:01 | Weblog
だそうなので、あとでよむ

「安全性論証」がソフト技術者の必須科目の時代に
http://techon.nikkeibp.co.jp/atcl/column/15/415543/101100052/

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

自律移動ロボ用「インテル RealSense ロボット開発キット」とかROSとか聞いてきた

2016-10-11 21:01:30 | Weblog
インテル ソフトウェア カンファレンス2016
に行ってきた!ので内容をメモメモ




■「人とモノ・ロボット」のコミュニケーションの可能性
Lineの人

・自己紹介
 Lineビジネスコネクト(API提供)

・Line最新概況
 日本の生活インフラLINE 6800万人 70.6%
 広告としてのLine公式アカウント 国内約250社
 開封率ではLine >> 電子メール
 LINEでカスタマーとの1to1を実現する
  Lineビジネスコネクト:APIでつなげることが出来る
    一方通行から双方向へ
    一斉配信から1:1へ
 120社
  2015年9月末30社→16年9月120社
  Botを活用したアカウント
  スマートポータル構想
 あらゆるものがネットワークでつながり
  一般消費者がIoTの価値を得る社会
  IoT領域でのLine活用はこれから・可能性

・Lineを活用したロボットとコミュニケーション
 動画:Vstone mobilus Line
  ロボットとのコミュニケーション

 モビルス様:モビエージェント
  Sotaで受けた→テキスト変換→Lineアカウントに投げる
  投げられたものを→Sotaに返す

 モビシリーズ
  モビコア:SDK
  モビエージェント
  モビワーク
  モビボット
 k-opticom様の例
  お客様からの質問を受ける
  セグメント配信:Push

・Line+ロボットの可能性について
  Sota
  大阪大学の石黒先生とともに創業
  高橋さんが顧問
 Line+Sota(ソータ)
  お店にいるSotaから来店者にメッセージ送信
  Sotaというメディアとテキストメッセージで会話→Bot
   音声識別が確実ではない→Lineテキストベース
  Line用デバイスとしてのロボット活用
 Lineとコミュニケーションロボットは相性がいい
  コミュニケーションロボットにおける2つの方向性
   個人専用端末に特化した活用(パーソナル)
   情報を集約した端末としての活用(ソーシャル)
  さらにそれらをミックスした情報の提供が可能
 インターフェースの内側はクラウドでよい
  ロボットのAIはどこにおいてあってもいい
  データはどこから来たものであってもいい
  Lineの会話相手は人でなくてもいい
  優れたインターゲースはコミュニケーションを多様化させる
 まったく異なるメディアは相互補完関係にある
  Line
  ロボット
 Lineとロボットはともに、本質的なIoTインタフェースである
 近い将来、Lineとロボットは不可分の存在となる

・モノロボットとLineでコミュニケーションは可能か
 すぐに実現できるか
  ロボット自体の普及
  テスト環境
  ビジネスモデル
 一方ChatBotは増えている:追い風にならないか?

・Lineビジネスコネクト
  広告、CRM:ビジネスコネクトは一般的に
  ChatBot活性化
  モノ・ロボットIOT:そのさき

・ヤマト運輸様によるLineビジネスコネクト
 会話AI
 Lineを活用した効果:
   通知の反応率アップ
   現場担当の武器となっている
 告知しなくてもともだち数は増加し続けている
 ブロック率は相対的に低い
 会話AI利用が通数ベースで継続して増えている

・会話AIの活用を拡大

 ソリューション・便利なアカウント・なくてはならないもの

・今後に向けて
 ChatBotの推進
  コミュニケーションを促進するメッセージタイプ
  誰もが簡単にテストしやすい環境
  投資しやすい料金体系
 →新API(Messaging API)によるChat Bot開発

 コミュニケーションを促進する新メッセージタイプ
  スムーズなチャットコミュニケ0ションを行うための
   新しいメッセージタイプの仕組み

 Developer Trialでのテスト環境の提
  固定+従量課金
 新APIでの料金体系
  固定(Line@)
  +reply api:課金しない
  +push API:従来どおりの課金

■インテルの自律移動ロボティクスのご紹介
・夏に行ったITFと同じような資料を使います
・IoTとロボティクスの関係
 ロボットとは
  周囲の環境に応じた行動ができる能力を持つ自律システム
   パッシブセンサーだけではない
   →自発的に見える
  ネットに接続していれば
   IoTデバイス供給
   クラウドへのオフロード、とってくる
   連係動作
  同時に単体で完結した自律システム
   IoTでかぶることもあるけど

 モバイルロボティクス
  移動体:ルンバのような
   動的に変化する缶ky法を認識する
   現在の位置を特定する
   特定の場所から場所へナビゲーションする
   必要に応じて人と連携する

 ソーシャルロボティクス
  人とコミュニケーションするが、ロボットには特別な技術が要求される

 インテル RealSense ロボット開発キット
  購入できる
  Aaeon UP Board(いおん)
   USB3.0が載っている
  R200
   深度情報が取れる
   GitHubで配布されている

・ロボットアーキテクチャ
 一般的なロボットのアーキテクチャ
  マスタコンピューター Linux
    画像
    音声
    自己位置測定
  スレーブMCU RTOS
    アクチュエーター
    センサー
 サンプルSWDロボット

 開発プロセス
  OSRF Turtlebotリファレンススタック
    アクリル板を買ってきて、DMM.Makeでつくりだせる
  組み立て

・ROS
 ROS:ろす Robot Operating System
  実際にはミドルウェア:ツールなどもあるソフトウェア群
 ROSの基本コンセプト:メッセージとトピック
   トピック:別々のPC上でも処理できる
  サービスコール:同期型システムコール
  アクション:非同期
  パラメーター;定数 大きさ、速さの初期値など

 その他
  パッケージ:標準ではcatkin(きゃっきん)でビルド
  URDF:3Dモデルの記述XML
  Launchファイル
  YAML
 ツール

 ノードグラフ

・まとめ
 自律移動ロボットは新興のカテゴリー
  スマホに近い:自律移動があっさり作れる
 ROS→車を動かす:ミッションクリティカルにも

・詳説 ROSロボットプトグラミング

 ノードレット:1つのプロセス

■インテル System Stduio 2017のご紹介
・4年前、SystemStudioとしてツールをまとめた
 組み込み:課題 IoT,ネットワークコネクション、セキュリティ・・・

・求められるポイント
  Time To Market
  Boost Power Efficiency&Performance(低電力で高性能)
  Strengthen System Reliability

・System Studio
 3つのカテゴリー
  パフォーマンス&チューニング
  解析する(アナライザー)
  デバッガー

・2017の新機能

・3つのパッケージが用意されている
  すべてはいてるのがUltimate

・3ヶ月ごとにマイナーアップデート

・メジャーコンポーネントの案内
 VTune:ソフトのコード解析に使われる
  パフォーマンスの解析も
 SOC-Watch→energy profiler

 グラフィックス

 システムデバッガ
   CCAというデバッガ:箱を開けないでいい

 GPGPU;コンバイらが自動的にオフロード
  OpenCLを求められない。コンパイラで
 (オフロード部分を#pragmaにする)

・デモ
 グラフィックスオフロード
 システムトレース
 SoC-Watch:CPU内部データの収集


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

「動かないコンピュータ」裁判を読み解く

2016-10-11 13:14:18 | ネットワーク
という日経コンピューター10月13日号のP35より以下引用

トラブルによる損失を回避する新常識
1.契約や議事録の「文言いじり」は逆効果
2.パッケージ導入前に1~2年の検討期間を
3.早期のプロジェクト中止も選択肢に

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

mbed祭り 2016@秋の虎ノ門

2016-10-11 01:49:15 | Weblog
レポートのありか

mbed祭り 2016@秋の虎ノ門 [lang:ja]
https://developer.mbed.org/users/MACRUM/notebook/mbed-fest-2016-autumn-report/

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする