Physical Computing

Network and Information, Senshu Univ.

Menu
  • Home
  • Tips
  • About
  • admin

Category: Uncategorized

13 発表会

January 20, 2022
| No Comments
| Class materials, Uncategorized

発表会は、相互評価形式で行います。4限と5限の前半を利用して相互評価を行い、5限後半には集計もふまえて総括をしたいと思います。 13.1 作品の相互評価 自分以外の作品をすべて評価してください。評価はGoogleフォームで行います。これはClassroomの授業に提出場所があります。 評価項目は以下の5つです。それぞれ5段階で評価します。 作品の完成度: 作品の難易度、動作の正確性、機能の豊富さで評価します。作品が未完成で動作していない場合には1か2にしてください。完成している作品は3以上ということになります。 アイディアの面白さ: 有用性、意外性、エンターテイメント性などを評価します。 見た目の工夫: レーザーカッターや3Dプリンタを使っている場合には高く評価してください。そのほかダンボール等を使っていてもきちんと色を塗っている等の工夫があれば高評価にしてください。 説明の完成度: 作品の説明が分かりやすいか、使用している写真が上手く撮れているかなどによって評価します。 動画の完成度: 動画のクオリティで評価してください。 ポートフォリオの左側に学籍番号が並んでいますが、そこに「未提出」あるいは「未完成」となっているものは評価対象ではありません。 13.2 お気に入り 上記の5段階の評価とは別に、自分の作品以外でお気に入り1つ以上3つ以下を、選んでもらいます。それぞれ、理由を記載してください。これもClassroomの授業に提出場所があります。 13.3 発表会予備日 何かの理由で本日の発表会に動画とポートフォリオの説明が間に合っていない場合には、来週26日(水)の23:59までに遅れて提出することができます。この場合、対象者のみ参加することとし、相互評価は行いません。 — by 飯田 周作、沼 晃介、石井 健太郎 専修大学ネットワーク情報学部

Read More »

Posted in Class materials, Uncategorized

NE20の学生さんたちへ

September 18, 2020
| No Comments
| Uncategorized

フィジカルコンピューティングプログラム(PCプログラム)は、新しいメンバーを募集しています。PCプログラムの特徴は、ハードウェア、ソフトウェア、ユーザインターフェイス、グラフィックス、プログラミング等の幅広い知識を利用してアイディアを実現するための方法を身につけることです。 まだ皆さんは1年次生なので、この先どのようなことを学んでいくのかについて明確なイメージがないかもしれません。でも、そんな心配は無用です。IoTやロボット、電子玩具、メディアアート等に興味があるのならば、PCプログラムに参加することを選択肢として考えてみてください。きっと楽しい時間が過ごせるはずです。 よくプログラミングができないとPCプログラムはダメですか?というような質問を受けます。確かに応用演習(PC)ではプログラミングも行います。しかし、プログラミングはサービスやガジェットを実現する様々な要素の1つに過ぎません。どのくらい頑張ってプログラミングするかは皆さん次第だと言えるでしょう。そして、頑張りどころはその他にも沢山あるのです。 PCプログラムに参加すると、どのような企業に就職できるのですか?という質問もたまに受けます。これまでのところ、エンジニアになる人が多いです。しかし、今や生産の自動化やIoTを使った情報分析などを使わない企業の方が珍しいくらいです。農業や漁業も、ITによって大きく変わろうとしています。そういう現状では、皆さんがPCプログラムで勉強をして、それを活かす場面がない企業に就職することの方が難しいと言えるでしょう。 — 担当教員

Read More »

Posted in Uncategorized

12 Project Week 4

December 19, 2018
| No Comments
| Uncategorized

今日は、以下のプロセスのうちの6を実施します。 マインドマップ作成 部品リスト作成 実現可能性分析 ブロック図作成 回路図作成 実装 テスト 目次 12.1. 実装 12.2. 実習 12.1 実装 先週作成した回路図に基づいて、回路の作成を行います。回路が正しく動くことを確認したら、メカの作成に入りましょう。 12.2 実習 作業1. 作業報告書 作業の進捗を写真と文章で説明してください。     — by 石井 健太郎、飯田 周作 専修大学ネットワーク情報学部

Read More »

Posted in Uncategorized

Presentation

January 19, 2018
| No Comments
| Uncategorized

発表会は無事に終了しました。皆さんお疲れ様でした。 以下、写真が撮れていた作品です。

Read More »

Posted in Uncategorized

5 PWM

October 17, 2017
| No Comments
| Uncategorized

2017.10.19 今回の講義の目的は、マイコンを使って電圧を制御することです。電圧を上げたり下げたりできると、LEDの光る強さを変えたり、モータの回転速度を変えたりすることができます。 ※10月19日の演習には、未使用の単3電池2本を持参してください。持ってきていない場合には、演習時間内に購入しに行ってもらいますが、コンビニで買うと高いです。 目次 I. PWM II. Basics of Motor III. Practical Work I. PWM マイコンの世界はデジタルなので、プログラムで電圧を制御するのは、ちょっと難しいことです。そこで、PWMという手法が登場します。 Theory マイコンのデジタルピンからの出力は、HIGH(例えば3V)かLOW(例えば0V)のどちらかだけです。しかし、0Vから3Vまでの間の電圧を、自由に変えたいという場合があります。例えば、LEDの明るさを調整したい場合などです。こういう時には、PWM(Pulse Width Modulation)という方法を用います。 PWMの仕組みを一言で説明すると、HIGHとLOWを素早く切り替えることによって、その間の電圧を擬似的に作り出す方法です。以下の図をみてください。 このようにHIGHとLOWを規則的に繰り返す信号を、パルス波と言います。上記の図で示しているパルス波は、ある一定時間で同じパターンを繰り返していますね。このような繰り返しの間隔を周期と呼び、1秒間に何周期あるかを周波数と呼びます。周期の始まりは、LOWからHIGHに変わる瞬間で、周期の終わりは、次にLOWからHIGHに変わる瞬間です。周波数1kHzと言ったら、1秒間に1000回の周期が起こるような波形を意味します。 図で示したパルス波は、1周期におけるHIGH(3V)とLOW(0V)の間隔が、ちょうど1/2ずつになっています。周波数が十分に高い場合,このデジタルピンにかかる電圧は、3V / 2 = 1.5Vとなります。これがPWMです。実際に電圧を変えるのではなくて、擬似的に電圧を変えているのです。 PWMを使用する場合、どのくらいの周波数が必要かは難しい問題なので、あまり深入りしないことにしますが,1Hzではだめなことは明らかです。1Hzということは、HIGHとLOWが同じ時間であるとすると1周期内で0.5秒ずつです。LEDで実験すると単に点滅するだけです。PWMの周波数は、デジタルピンの用途によって変わるとされています。例えばLEDの時,モータの時という具合です。モータの場合には1kHz位が適当だと言われています。LEDだと、その半分くらいでも大丈夫でしょう。とりあえず、この講義では、PWMに必要な周波数は1kHzくらいと思っておきましょう。 PWMを使った場合にデジタルピンにかかる電圧は,デューティ比(duty ratio) によって決まります。デューティ比とは,1周期の間にHIGHになっている割合のことです。HIGHが3Vの場合、デューティ比50%ならば1.5V,10%ならば0.3Vとなります。 PWMを使って電圧を制御するには、パルス波を作り出す必要があります。パルス波は、タイマを使って作ります。非常に微小な時間をタイマによって作りだし,デジタル出力をHIGHにしたりLOWにしたりします。例えば、1kHzの周波数でPWM 制御をしたいとしましょう。1秒間に1,000周期ですから,1周期は1msです。1周期を10段階に分けると、1段階100μsになります。この100μsをタイマを使って作り1単位とすれば、10%刻みでデューティ比が設定できるようになります。 Practice mbedの基本ライブラリには、PWMを簡単に使うためのPwmOutというクラスが用意されています。よって、自分でタイマを使って波形を作る必要はありません。ただし、PwmOutに指定できるピンは決まっています。以下のURLで確認してください。紫色で”PWM何とか”と書いてあるピンが使えるピンです。 https://os.mbed.com/platforms/ST-Nucleo-F303K8/ ソース電流を使った回路でLEDを光らせることを考えます。定電流ダイオードではなくて、330Ωの抵抗を使っていることに注意してください。 以下のようなプログラムを作成して、実行します。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include "mbed.h"
 
PwmOut pwm(D12);
 
int main() {
    pwm.period_ms(1);
    while(1) {
        pwm = 0.2;     // 20%
        wait(1);
        pwm = 1.0;     // 100%
        wait(1);
    }
}
 

LEDをよく見ていると、1秒ごとに光る強さが変わるのが観察できるはずです。暗い時にはPWMのデューティ比は20%になっています。 myled.period_ms(1);に注目してください。これは、PWMの周期を、1msの幅に設定しています。1周期が1msということは、1kHzということですね。それでは、これを100msにしたら、どうなるでしょうか。これは、演習で実際に実験することにしましょう。 デューティ比を変化させてLEDの明るさを連続して変化させて見ましょう。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include "mbed.h"
 
#define BRIGHTNESS_MAX 100
PwmOut myled(D12);
 
int main() {
    int brightness = 20;     // initial brightness value
    int increment = 5;
    myled.period_ms(1);
    while(1) {
        brightness += increment;
        if(brightness > BRIGHTNESS_MAX) {
            brightness = BRIGHTNESS_MAX;
            increment = - increment;
        }
        else if(brightness < 0) {
            brightness = 0;
            increment = - increment;
        }
        myled = brightness / 100.0;
        wait(0.1);
    }
}
 

LEDの明るさが滑らかに変わることが観測されます。 PWMを使う際にもう1つ頭に入れておいて欲しいことがあります。デューティ比を変化させる際には少し間隔をおいてください。5msくらいあれば大丈夫だと思います。 II. Basics of Motor この講義では、DCモータとサーボモータという2種類のモータを使います。 What is DC Motor? 家庭にある電源コンセントを、AC100Vと呼ぶことは知っていると思います。このACとはAlternating […]

Read More »

Posted in Uncategorized

Posts navigation

1 2 Next

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.