Physical Computing

Network and Information, Senshu Univ.

Menu
  • Home
  • Tips
  • About
  • admin

Month: December 2019

12 Project Week 2

December 18, 2019
| No Comments
| Class materials

今日は、以下のプロセスのうち5を実施します。 企画(マップ作成) 部品リスト作成 実現可能性分析 ブロック図作成 回路図作成 実装 テスト 12.1 デバイスのテスト ブロック図が書けたら、使用するデバイスが思い通りに動くかどうかのテストをします。デバイスのテストは、実現可能性分析の一部です。 これは非常に大切なテストで、もしデバイスが思い通りに動かない場合には作品の全体像を作り直さなければいけなくなるかもしれません。今日のメインの作業はこれだと思ってください。 デバイスをテストする際には、そのデバイスだけを動かす回路を作ります。結果はPCとシリアル通信して確認します。一つひとつのデバイスが思い通りに動くことを確認するまでは全体の回路図の作成に入ってはいけません。 12.2 回路図 デバイスのテストが終わったら、それらを組み合わせた全体の回路図を作成します。Fritzingを使って描いてください。 12.3 実習 作業1: 回路図の作成 最終作品全体の回路図を作成してください。これは、1月8日(水)の20時までに提出してください。 提出先はCoursePower、ファイルフォーマットはPDFです。 作業2: 最終作品の実装 冬休み中に、最終作品制作を進められるだけ進めておいてください。これに関しては特に提出物はありません。 — by 石井 健太郎、沼 晃介、飯田 周作 専修大学ネットワーク情報学部

Read More »

Posted in Class materials

11 Project Week 1

December 9, 2019
| No Comments
| Class materials

今日は、以下のプロセスのうち4を実施します。1と2および3に関しては火曜日の授業で作ったものを使います。 企画(マップ作成) 部品リスト作成 実現可能性分析 ブロック図作成 回路図作成 実装 テスト お知らせ: 1/23に最終作品の発表会を行います。場所は1号館ディスカッションスペースです。 11.1 ブロック図 ブロック図は、電子回路に限らず、システムの概要を設計する際に使うことができる図です。記法は単純で、システムの要素を四角(box)で記述し、要素間の関係を矢印(arrow)で記述します。ブロック図は、”box and arrow diagram”とも呼ばれています。 上記の例では、矢印の向きが情報や電流の流れを表しています。カラーセンサから得られた情報に基づいてDCモータの回転を制御する、というようなイメージです。 ブロック図を書く理由は、ハイレベルなコミュニケーションのためのツールとして使うためです。商品企画などをしている時には、回路図では情報が詳細過ぎて、情報を提示する側にとっても、それを読む側にとっても効率が良くありません。そのために、回路図よりも大雑把なくくりで表現できるブロック図を使うわけです。 四角で何を表すかについては、色々なやり方があります。例えば、LEDを4つ使って0から15までの数を示す装置を作る場合、LED一つひとつを四角として表現することもできますし、LEDが4つ集まったものに「LED表示装置」などの名前をつけて1つの四角で表現することもできるでしょう。何れにしても、複雑すぎないように抽象度を設定し、図にメモ書きを加える等の工夫をして、わかりやすい図を作りましょう。 11.2 実習 作業1:企画のチェック 教員が全員の企画をチェックします。アイディアの視覚化のためのマップを見せながら3分以内で各自の企画を説明してください。 チェックの結果によっては、部品リストを変更したり、追加の部品が必要になったりします。 部品リストや実現可能性分析に変更が生じた場合には、それらを修正して提出し直してください。 作業2: 部品リストと実現可能性分析 部品リストと実現可能性分析を完成させてください。 作業3: ブロック図を描く ブロック図を完成させてください。提出期限は、来週の月曜日の20時までです。 — by 石井 健太郎、沼 晃介、飯田 周作 専修大学ネットワーク情報学部

Read More »

Posted in Class materials

10 Unity Day 2

December 3, 2019
| No Comments
| Class materials

今週は、先週に引き続いてUnityを使います。 目次: 10.1 物理演算エンジン 10.2 衝突検出 10.3 摩擦や反発 10.4 物体に力を加える 10.5 実験の準備 10.6 実習 10.1 物理演算エンジン 物理法則のシミュレーションをすることを物理演算といいます。ここでいう物理法則というのは、重力だったり、摩擦だったり、反発だったりです。物理演算エンジン(Physics Engine)というのは、Unityの世界にあるオブジェクトに物理法則を適用するためのライブラリです。物理演算エンジンは、単に物理エンジンとも呼ばれます。 それでは早速、試してみましょう。UnityでPhysicsEngineという新しいプロジェクトを作成し、PlaneとSphereを配置します。Sphereの位置は、X=0、Y=4、Z=0にします。 このまま実行ボタンを押すと、ボールは空中に浮かんだままです。 Sphereを選択して、Inspectorビューの一番下にあるAdd Componentをクリックします。 すると、Sphereに加えることができるコンポーネントの一覧が出てきます。ここからPhysics → Rigidbodyを選びます。このRigidbodyというコンポーネントが物理演算のためのライブラリです。今は、Sphereに対してRigidbodyを加えるので、この世界で物理法則に従うのはSphereだけです。 Rigidbodyが正しく加えられれば、Inspectorビューにその情報が表示されるはずです。 ここでUse Gravityにチェックが入っていれば、この物体は重力の影響を受けるようになります。重力は、y軸方向の下に向かってかかります。 この状態で実行してみましょう。Sphereが下に向かって落下するのが観察できるはずです。 Planeは空中に浮いたままですね。これは、PlaneがRigidbodyを持っておらず、重力の影響を受けないからです。PlaneにもRigidbodyをくっつけて、Use Gravityにチェックを入れれば、PlaneもSphere同様に落下していきます。 RigidbodyのMassというパラメータは質量です。Dragは水平垂直移動による空気抵抗、Angular Dragは回転による空気抵抗です。 10.2 衝突検出 Unityで衝突検出(Collision Detection)といえば、オブジェクト同士が衝突したかどうかの検出を意味します。3Dの世界の衝突検出は、通常なかなか難しい計算を必要とするのですが、UnityにはColliderというコンポーネントがあり、とても簡単に実装できます。 先ほどのPhysicsEngineというプロジェクトをそのまま使います。Planeを選択してInspectorを表示させてください。 下の方にMesh Colliderというコンポーネントが見つかります。このコンポーネントはオブジェクトを作成した時に、自動的にくっつけられています。 Mesh Colliderと表示されている横にあるチェックボックスを外してください。このようにコンポーネント名の横にあるチェックボックスを外すと、そのコンポーネントはくっついていない状態になります。 これで実行してみると、今度はSphereがPlaneを通過してしまうのが観察されるはずです。これは衝突判定が行われなくなった結果です。 Colliderにはいくつかの種類があります。Box Colliderや、Capsule Collider、Sphere Colliderなどです。Mesh Colliderの衝突判定は一番計算に時間がかかります。用途に応じて適切なColliderを選択する必要があります。 10.3 摩擦や反発 Rigidbodyを使うと、重力や空気抵抗を計算することができます。でも、これだけでは物体同士の摩擦や反発は計算されません。これらの計算は、Physics Materialというコンポーネントで行います。 引きづつきPhysicsEngineというプロジェクトを使います。 メニューのAssetsからCreate → […]

Read More »

Posted in Class materials

Recent Posts

  • NE22の学生さんたちへ
  • 13 発表会
  • 12 発表準備
  • 11 実装
  • 10 要素テスト

Archives

  • July 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • January 2018
  • December 2017
  • November 2017
  • October 2017
  • September 2017
  • July 2017
  • January 2017
  • December 2016
  • November 2016
  • October 2016
  • September 2016

Categories

  • Announcement
  • Class materials
  • Tips
  • Uncategorized

Meta

  • Log in
  • Entries RSS
  • Comments RSS
  • WordPress.org

Physical Computing 2023 | Powered by WordPress.