0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

電子回路入門 超音波センサー

Last updated at Posted at 2018-03-08

#はじめに
書籍に沿って引き続き進めていきます。

#超音波センサーとは
超音波を出して距離を測定するセンサーです。
音波を出し戻ってくるまでの時間で距離を計測することができるようです。
図1.png

まずTriggerを10μ秒間ONにすると、超音波が発信れます。
発信されるとechoがONになり、受信するとechoがOFFになります。
仕組み.png

今回の製作において、こちらのページが大変わかりやすく、参考にさせていただきました。
Arduinoの場合だとライブラリがあったり参考記事がたくさんあるのですが…

超音波がいっぱいある場所や超音波が苦手な動物がいる場所では使用しないようにしましょう。
→ その場合は赤外線で距離を計測

#回路図
超音波_ブレッドボード.png

#PSoC設定

  • ControlRegを使用してTrigger(Pin2)のONとタイマーのリセットを同時に実行できるようにします。
  • echo(Pin3)がONになったときタイマー計測を開始できるようにします。
    設定.png

#プログラム
ほぼ参考にさせていただいたページと同じですが。

#include "project.h"
#include <stdio.h>
#include <stdlib.h>
 
int value_counter=0;
float distancia=0.0;
char imp[9];
 
int main(void)
{
    CyGlobalIntEnable;
    
    Timer_1_Start();
    UART_1_Start();
    for(;;)
    {
        while(Pin_3_Read()==0)
        {
            Control_Reg_1_Write(1);
            CyDelayUs(10);
            Control_Reg_1_Write(0);
            CyDelay(1);
        }
        while(Pin_3_Read()== 1){};
        value_counter = 65535-Timer_1_ReadCounter();
        distancia = value_counter / 58.0 ;
        sprintf(imp,"%.1f cm  \n",distancia);
        UART_1_PutString(imp);      
    }
}

#結果
結果.png

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?