Posted on

การหาความยาวรอบวงสายพานไทม์มิ่ง XL หน่วยเป็น mm.

สายพานไทมิ่ง (Timing Belt) เป็นสายพานที่ใช้งานในระบบเครื่องยนต์ สายพานไทมิ่งเบอร์ XL มีขนาดระยะพิทช์ (pitch) เท่ากับ 5.08mm.

การแปลงสายพานไทม์มิ่งเบอร์ XL เป็นความยาวรอบวงของสายพาน

L = (XL/2)xP

โดยที่

  • L = ความยาวรอบวง หน่วย mm.
  • XL = เบอร์ สายพานไทม์มิ่ง
  • T = จำนวนฟันของสายพาน = (เบอร์ สายพานไทม์มิ่ง) / 2 = XL/2
  • P = ระยะพิทช์ (pitch) เท่ากับ 5.08mm.

ตัวอย่างเช่น หากต้องการแปลงสายพานไทม์มิ่งเบอร์  100XL หรือ XL100 เป็นความยาวรอบวง หน่วย mm.

L = (100/2)x5.08

ความยาวรอบวงพานไทม์มิ่งเบอร์ 100XL หรือ XL100 = 254 mm.

Posted on

Wlkata Firmware Upgrade

Mirobot robotic arm firmware upgrade :

Method 1

1. Turn on the robot arm and plug the USB cable into the robot arm.

2. Open WLKATA Studio, enter Settings , select Mirobot and click Update Firmware .

Mirobot robotic arm firmware upgrade :

Method 2

1. Turn on the robot arm and plug the USB cable into the robot arm.

2. Find the “updatehex” folder in the root directory of “WlkataStudio”. As shown in Figure 17-5.

3. After opening “updatehex”, find “XLoader” and open it. As shown in Figure 17-6.

4. Open ” XLoader ” and select the latest robot arm firmware downloaded . As shown in Figure 17-7.

5. After selecting the arm firmware , click the ” Upload ” option. As shown in Figure 17-8.

Multifunction controller firmware upgrade :

Method 1

1. Turn on the robotic arm and plug the USB cable into the multi-function controller .

2. Find the “controlbox” folder in the root directory of “WlkataStudio”. As shown in Figure 17-10.

3. Open the folder “controlbox”, find and open the folder “bin file”. As shown in Figure 17-11

4. Double-click to open the folder “binfile”, as shown in Figure 17-12(1). Then put the firmware you just downloaded into it, delete the old version of the firmware, and only keep the latest firmware. As shown in Figure 17-12(2).

5. Open WLKATA Studio, enter the settings , click update firmware behind the multi-function controller firmware .

Method 2

1.. Turn on the robotic arm and plug the USB cable into the multi-function controller .

2. Install “flash_download_tool_3.8.8” and open the software.

3. After opening the software, a window will pop up, as shown in Figure 17-15.

Select ” ESP32 ” in the “Chip Type” column , as shown in Figure 17-16(1)

Select ” factory ” in the “Work Mode” column , as shown in Figure 17-16(2).

Click ” ok ” to go to the next step

4. The page is now locked and needs to be manually unlocked. Uncheck ” LOCK SETTINGS “. As shown in Figure 17-17.

The red box is the multi-function controller firmware (c-), and the blue box is the Bluetooth teach pendant firmware (t-). Here we don’t consider the teach pendant, only choose the controller. The address below is 0x00 by default .

Select the downloaded latest multi-function controller firmware to load

Select the robot port , and select 921600 as the baud rate . Figure 17-19

Then click the ” Start ” button. Figure 17-20

Posted on

ตัวอย่างโปรแกรม แสดงผล Counter บนคอมพิวเตอร์ Modbus RTU RS485 ด้วย Software Processing 

โปรโตคอล Modbus เป็นวิธีการมาตรฐานในอุตสาหกรรมสำหรับการถ่ายโอนข้อมูล ใช้กับระบบอัตโนมัติและระบบควบคุมในงานอุตสาหกรรม

  • Step 3 : เชื่อมต่อสายสื่อสารข้อมูล RS485-USB เข้ากับคอมพิวเตอร์
  • Step 4 : เปิด Source Code เปลี่ยน Comport ให้ตรง (ทำได้โดยแก้ไขบรรทัดที่  3 เดิมเป็น COM11 เปลี่ยน commPort เป็น COMXX ให้ตรงกับ Comport ในคอมพิวเตอร์ของเรา *ดูใน Device Manager )

Step 5 : กดปุ่มรัน (Run) โปรแกรมจะแสดงผลค่า Target และค่าที่นับได้ (Actual)

Posted on

การแปลงนิวตัน-เมตร (N-m) เป็นกิโลกรัม-เซนติเมตร (kg-cm)

ในการแปลงนิวตัน-เมตร (N-m) เป็นกิโลกรัม-เซนติเมตร (กก.-ซม.)  สามารถใช้ การแปลงต่อไปนี้:

1 N-m = 100 kg-cm

ดังนั้น หากต้องการแปลงค่าจาก N-m เป็น kg-cm ให้คูณค่าด้วย 100

ตัวอย่างเช่น ถ้ามีค่าแรงบิด 20 N-m เราสามารถแปลงเป็น kg-cm ได้ดังนี้:

20 N-m * 100 kg-cm/N-m = 2000 kg-cm

ดังนั้น 20 N-m เท่ากับ 2,000 kg-cm

Posted on

Learning Steps and Time elephantrobotics myCobot 280 M5 Robot Arm

Learning Steps and Time elephantrobotics myCobot 280 M5 Robot Arm

No. Target knowledge points Theory Practice Estimated hours of learning
1 Quick unpacking 1 Drag teaching 1. The accessories for myCobot
2. drive the robot to perform drag teaching
1 hour
2 Background knowledge learning 1. Use background of industrial robots;
2. coordinate and space learning, and Cartesian 3D coordinate and rotation, xyz;
3. joint and coordinate control of industrial robots
1. Joint control and recurrence of robot joints
2. speed control of robots
3. control and cycle of robot coordinate points
5 hours
3 Hardware learning 1. Principles and operations of embedded electronics
2. the principle and knowledge of servo and motor
3. actuator learning
1. Basic/atom control and driving
2. driving and motion of servo
3. robot accessory learning
5 hours
4 Software and firmware and their updating 1. Identify different software platforms and their use
2. firmware loading and adaptation principle
1. Select the developing platform suitable for you
2. load and update the corresponding firmware.
2 hours
5 Building of software development environment 1. Build Arduino platform
2. load and update of Arduino library file
3. understand serial communication
1. Familiar with Arduino platform
2. load a library
3. operate and run the first line of codes
2 hours
6 Learning and development of robot library 1. Basic communication and operation types of robots
2. common operating methods of robots
3. control of direction and coordinate modes
1. Communicate with the robot
2. control the robot to move
3. operate the IO interface, gripper, etc. of the robot;
5 hours
7 myBlockly operation robot arm 1. Understand the basic architecture and relation of graphical programing language interfaces: sensor, actuator and procedure
2. variable, cycle and judgment
3. control method of robot arm
1. Display different fonts in the basic
2. make the robot arm move to different positions using three buttons of the basic
3. control the robot arm to make it move to several positions circularly
10 hours
8 The use of roboFlow 1. Learn the industrial operating systems commonly used for robots
2. learn the common modules for roboFlow: point, quick movement, IO control and output
3. learn the advanced modules of roboFlow: cycle, judgment, and pallet program
1. Control the movement of the robot arm
2. basic control of IO input and output
3. cycle control and judgmen
5 hours
9 Algorithms related to image recognition 1. Common color recognition methods and strategies
2. common shape recognition methods and strategies
3. common area recognition methods and strategies
1. Building of a ROS environment
2. reading of different colors
3. recognition of different shapes
20 hours
10 Vision and the joint debugging of the robot 1. Connect the world with a camera coordinate system
2. QR code image calibration
3. movement and correction
1. Operate the robot arm to the camera coordinate system
2. the robot arm moves in the camera coordinate system
3. recalibrate and set
10 hours
11 Artificial intelligence (AI) package 1. Flow chart learning and making
2. electrical connection diagram learning and making
3. operation strategies such as image recognition and classification, etc
1. Sensor connection
2. gripper actuator connection and driving
3. robot arm driving and visual joint debugging
20 hours

 

Docs

  • https://docs.elephantrobotics.com/docs/gitbook-en/3-RobotKnowledge/3.1-series_robot.html
Posted on

ตัวอย่างโค้ด Arduino รวมเซนเซอร์ 37 ชิ้น

ตัวอย่างโค้ดรวมเซนเซอร์ Arduino 37 ชิ้น  Arduino Example Code 37 Sensor Kit

ตัวอย่างโค้ด โมดูลเซ็นเซอร์อุณหภูมิ Temperature sensor module Arduino Example Code

รหัสนี้ใช้ไลบรารี OneWire และ DallasTemperature เพื่อสื่อสารกับโมดูลเซ็นเซอร์อุณหภูมิ ไลบรารี OneWire ใช้เพื่อสร้างการสื่อสารกับโมดูลเซ็นเซอร์อุณหภูมิผ่านบัสสายเดี่ยว และไลบรารี DallasTemperature มีอินเทอร์เฟซที่ใช้งานง่ายสำหรับการอ่านค่าอุณหภูมิ ในฟังก์ชันการตั้งค่า เราเริ่มต้นพอร์ตอนุกรมและเริ่มไลบรารี DallasTemperature ในฟังก์ชันลูป เราร้องขออุณหภูมิจากเซ็นเซอร์โดยใช้ฟังก์ชัน requestTemperatures จากนั้นพิมพ์ค่าอุณหภูมิโดยใช้ฟังก์ชัน getTempCByIndex โปรดทราบว่ารหัสนี้ถือว่าโมดูลเซ็นเซอร์อุณหภูมิเชื่อมต่อกับพิน 2 บนบอร์ด Arduino และใช้ดัชนีอุปกรณ์เริ่มต้น (0) คุณอาจต้องแก้ไขค่าเหล่านี้ขึ้นอยู่กับการตั้งค่าเฉพาะของคุณ

 

ตัวอย่างโค้ด Automatic flashing colorful LED module Arduino Example Code

 

ตัวอย่างโค้ด Mini magnetic reed modules Arduino Example Code

 

ตัวอย่างโค้ด Hall Magnetic sensor module Arduino Example Code

 

ตัวอย่างโค้ด Infrared sensor receiver module Arduino Example Code

 

ตัวอย่างโค้ด Class Bihor magnetic sensor Arduino Example Code

 

ตัวอย่างโค้ด เซนเซอร์สวิตช์ปรอทกับหลอดไฟ LED KY-027 Magic light cup module Arduino Example Code

 

ตัวอย่างโค้ด Rotary encoder module Arduino Example Code

 

ตัวอย่างโค้ด Optical broken module Arduino Example Code

 

ตัวอย่างโค้ด Detect the heartbeat module Arduino Example Code

 

ตัวอย่างโค้ด Reed module Arduino Example Code

 

ตัวอย่างโค้ด Obstacle avoidance sensor module Arduino Example Code

 

ตัวอย่างโค้ด Hunt sensor module Arduino Example Code

 

ตัวอย่างโค้ด Mercury open optical module Arduino Example Code

 

ตัวอย่างโค้ด 3mm 2 Color LED module Arduino Example Code

 

ตัวอย่างโค้ด Active buzzer module

 

ตัวอย่างโค้ด Microphone sound sensor module

 

ตัวอย่างโค้ด Laser sensor module Arduino Example Code

 

ตัวอย่างโค้ด Temperature sensor module Arduino Example Code

 

ตัวอย่างโค้ด Magnetic Hall sensors Arduino Example Code

 

ตัวอย่างโค้ด Flame sensor module Arduino Example Code

 

ตัวอย่างโค้ด Sensitive microphone sensor module Arduino Example Code

 

ตัวอย่างโค้ด Temperature&humidity sensor module Arduino Example Code

 

ตัวอย่างโค้ด 3 Color full-color LED SMD modules Arduino Example Code

 

ตัวอย่างโค้ด Infrared emission sensor module Arduino Example Code

Posted on

การควบคุมรถบังคับดีซีมอเตอร์ผ่านสมาร์ทโฟนโดยใช้อาดูโน่ Arduino Car Robot Bluetooth Module

หลักการควบคุมไดรเวอร์มอเตอร์ L298 ด้วย Arduino และสมาร์ทโฟน จะต้องตั้งค่าการสื่อสาร Bluetooth ระหว่าง Arduino และสมาร์ทโฟน ติดตั้งโมดูล Bluetooth เช่น Bluetooth HC-05 (ZS-040) บน Arduino และต่อสายตามแผ่นข้อมูลของโมดูล ส่งคำสั่งจากสมาร์ทโฟนไปยัง Arduino เพื่อควบคุม L298 และมอเตอร์ที่เชื่อมต่ออยู่ ตัวอย่างเช่น ส่ง “F” เพื่อให้มอเตอร์เคลื่อนที่ไปข้างหน้า ส่ง “B” เพื่อให้มอเตอร์เคลื่อนที่ถอยหลัง และ ส่ง “S” เพื่อหยุดมอเตอร์ สามารถส่งคำสั่งเพื่อควบคุมความเร็วของมอเตอร์ เช่น “1” สำหรับความเร็วต่ำและ “9” สำหรับความเร็วสูง

รวบรวมวัสดุที่จำเป็น:

  1. BDMC04 บอร์ดอาดุยโน่ Arduino Uno R3 Compatible DIP IC CH340 USB Cable
  2. BDSP02 บอร์ดขับมอเตอร์ DC Motor Driver L298N
  3. BDBT01 โมดูลบลูทูธ Bluetooth Module HC-06 BT06 (ZS-040)
  4. DC Gear Motor พร้อมล้อ + โครงสร้างรถหรือตัวถังรถเพื่อประกอบฐานล้อ โครงรถอลูมิเนียม Aluminum Frame Robot Car Wheel TT DC Gear Motor
  5. เครื่องมือช่างที่จำเป็นได้แก่หัวแร้งและตะกั่วบัดกรี

แผนผังการต่อสายไฟ

ติดตั้งแอพเทอร์มินัล Bluetooth บนสมาร์ทโฟน

แอพ Android และ iOS ที่ให้เราส่งและรับข้อมูลผ่านบลูทูธ โดยใช้ Bluetooth terminal app, Serial Bluetooth Terminal, Bluetooth Terminal

ตั้งค่าฮาร์ดแวร์:

เชื่อมต่อโมดูลบลูทูธ เข้ากับ Arduino

  1. โมดูลบลูทูธ VCC  >> 3.3V Arduino
  2. โมดูลบลูทูธ GND >> GND Arduino
  3. โมดูลบลูทูธ RXD >> 11 Arduino
  4. โมดูลบลูทูธ TXD >> 10 Arduino

เขียน Code: arduino

เขียน Sketch สำหรับ Arduino เพื่อควบคุม L298 ตามคำสั่งที่ได้รับผ่านการเชื่อมต่อ Bluetooth Sketch นี้ใช้ไลบรารี software serial เพื่อตั้งค่าพอร์ตอนุกรมที่สองสำหรับ Bluetooth Module และรับฟังคำสั่งผ่านพอร์ตนี้ในฟังก์ชันลูป เมื่อได้รับคำสั่ง มันจะควบคุม L298 ตามอักขระที่ได้รับ L298 ถูกควบคุมโดยใช้ฟังก์ชันเอาต์พุตดิจิตอลเพื่อกำหนดทิศทางของมอเตอร์ และฟังก์ชันเอาต์พุตแบบอะนาล็อกเพื่อตั้งค่าความเร็วของมอเตอร์โดยใช้การมอดูเลตความกว้างพัลส์ (PWM)

 

Posted on

วิธีใช้อาดูโน่ควบคุมรถบังคับดีซีมอเตอร์ Arduino L298N DC Motor Car Robot

ในการควบคุมรถ RC โดยใช้ Arduino และไดรเวอร์มอเตอร์ L298N จะต้องทำตามขั้นตอนเหล่านี้

รวบรวมวัสดุที่จำเป็น:

  1. BDMC04 บอร์ดอาดุยโน่ Arduino Uno R3 Compatible DIP IC CH340 USB Cable
  2. BDSP02 บอร์ดขับมอเตอร์ DC Motor Driver L298N
  3. DC Gear Motor พร้อมล้อ + โครงสร้างรถหรือตัวถังรถเพื่อประกอบฐานล้อ RC4401 โครงรถอลูมิเนียม Aluminum Frame Robot Car 65mm Wheel TT DC Gear Motor
  4. เครื่องมือช่างที่จำเป็นได้แก่หัวแร้งและตะกั่วบัดกรี

ตั้งค่าฮาร์ดแวร์:

  1. เชื่อมต่อแหล่งจ่ายไฟเข้ากับโมดูลไดรเวอร์มอเตอร์ L298N
  2. โมดูล L298N จะต้องมีแหล่งจ่ายไฟแยกต่างหากจาก Arduino เนื่องจากจะต้องขับมอเตอร์ซึ่งต้องใช้กระแสไฟมาก
  3. เชื่อมต่อมอเตอร์เข้ากับโมดูลไดรเวอร์มอเตอร์ L298N โมดูล L298N มีเอาต์พุตมอเตอร์สองตัวสำหรับมอเตอร์ด้านซ้ายขวาของรถ RC
    1. เชื่อมต่อมอเตอร์ด้านซ้าย เข้า กับขั้วต่อ M1
    2. เชื่อมต่อมอเตอร์ด้านขวา เข้า กับขั้วต่อ M2
    3. เชื่อมต่อโมดูลไดรเวอร์มอเตอร์ L298N เข้ากับ Arduino เชื่อมต่อพิน ENA และ ENB ของโมดูล L298N
    4. เชื่อมต่อโมดูลไดรเวอร์มอเตอร์ L298Nเข้ากับพินดิจิทัล PWM ของ Arduino
    5. เชื่อมต่อพิน IN1, IN2, IN3 และ IN4 เข้ากับพินดิจิทัลเอาต์พุตของ Arduino

แผนผังการต่อสายไฟ

https://oshwlab.com/s2insupply/arduino-l298n-rc-robot-car

เขียน Code: arduino

  • เขียน Arduino Sketch เพื่อควบคุมมอเตอร์ ใช้ฟังก์ชัน digitalWrite() เพื่อตั้งค่าสถานะของพิน IN1, IN2, IN3 และ IN4 และใช้ฟังก์ชัน analogWrite() เพื่อตั้งค่าความเร็วของมอเตอร์โดยใช้พิน ENA และ ENB
  • อัปโหลด Sketch ไปยัง Arduino และทดสอบรถ RC ใช้ฟังก์ชัน digitalWrite() และ analogWrite() ใน Sketch เพื่อควบคุมทิศทางและความเร็วของมอเตอร์ และใช้รีโมทคอนโทรลหรืออุปกรณ์อินพุตอื่นๆ เพื่อส่งคำสั่งไปยัง Arduino

 

 

Posted on

วิธีทำถังขยะอัตโนมัติใช้อาดูโน่เซอร์โวมอเตอร์และอัลตร้าโซนิคเซนเซอร์ Arduino automatic waste bin

ภาพรวมของระบบถังขยะควบคุมอัตโนมัติประกอบด้วยส่วนประกอบหลัก 3 ส่วนได้แก่ตัวควบคุมเซ็นเซอร์และมอเตอร์ควบคุมในที่นี้ส่วน input ให้มาจากเซ็นเซอร์เซ็นเซอร์อัลตร้าโซนิคและ output ที่สามารถควบคุมการเคลื่อนไหวนั่นคือมอเตอร์ขนาดเล็กนั่นเอง

วิธีทำถังขยะอัตโนมัติโดยใช้อาดูโน่และเซอร์โวมอเตอร์และอัลตร้าโซนิคเซนเซอร์ การทำถังขยะอัตโนมัติโดยใช้ Arduino เซอร์โวมอเตอร์ และเซ็นเซอร์อัลตราโซนิกเป็นโครงการง่ายๆ ที่สามารถทำได้ในไม่กี่ขั้นตอน นี่คือโครงร่างทั่วไปของวิธีเริ่มต้นใช้งาน: หลักการทำงานของ เซ็นเซอร์อัลตราโซนิก HC-SR04 เป็นอุปกรณ์ยอดนิยมและราคาไม่แพงที่สามารถใช้วัดระยะทางไปยังวัตถุได้ ทำงานโดยปล่อยคลื่นเสียงความถี่สูงและวัดเวลาที่คลื่นเสียงสะท้อนกลับหลังจากกระทบวัตถุ หากต้องการใช้เซ็นเซอร์อัลตราโซนิก HC-SR04 กับบอร์ด Arduino จะต้องเชื่อมต่อเข้ากับบอร์ดโดยใช้สายจัมเปอร์ HC-SR04 มี 4 พิน คือ Vcc, Trig, Echo และ GND

รวบรวมวัสดุที่จำเป็น:

  1. BDMC04 บอร์ดอาดุยโน่ Arduino Uno R3 Compatible DIP IC CH340 USB Cable
  2. MT0501 เซอร์โวมอเตอร์ RC Servo Motor Micro RC SG90 Black
  3. SSUS01 เซ็นเซอร์อัลตราโซนิก เซ็นเซอร์จับระยะ Ultrasonic Sensor HC-SR04
  4. แหล่งพลังงาน (เช่น แบตเตอรี่หรือแหล่งจ่ายไฟ DC 4.5 – 12V)
  5. รังถ่านใส่แบตเตอรี่ Battery Holder
  6. สายไฟจัมเปอร์ Jumper Wire
  7. ถังขยะขนาดเล็กตามแต่จะหาได้

ตั้งค่าฮาร์ดแวร์:

  1. เชื่อมต่อเซอร์โวมอเตอร์เข้ากับ บอร์ด Arduino UNO R3 โดยใช้สายจัมเปอร์
  2. เชื่อมต่อเซ็นเซอร์อัลตราโซนิกเข้ากับ บอร์ด Arduino UNO R3 โดยใช้สายจัมเปอร์
  3. เชื่อมต่อแหล่งจ่ายไฟ DC 4.5 – 12V เข้ากับ บอร์ด Arduino Uno R3 ผ่านทางขั้ว DC Jack 5.5×2.1mm
  4. Code นี้ เซอร์โวมอเตอร์เชื่อมต่ออยู่กับขา 8 ของ บอร์ด Arduino Uno R3
  5. ขา Trig Pin ของเซ็นเซอร์อัลตราโซนิกเชื่อมต่อกับขา 9 ของ บอร์ด Arduino Uno R3
  6. ขา echo Pin ของเซ็นเซอร์อัลตราโซนิกเชื่อมต่อกับขา 10 ของ บอร์ด Arduino Uno R3

How HC-SR04 Ultrasonic Module Distance Sensor works

เซ็นเซอร์จะส่ง Ping ที่เวลา t1 และรับการ Ping ที่เด้งที่เวลา t2 เมื่อทราบความเร็วของเสียง ความแตกต่างของเวลา Δt = t2 – t1 สามารถทำให้เราทราบระยะทางของวัตถุได้

  • D, distance = (t2 – t1/2)
  • D, distance = (Δt /2)
  • D, distance = (duration/2)

ตัวอย่างเช่น ถ้า Δt = 500us เรารู้ว่าต้องใช้เวลา 250us ในการส่ง Ping ไปกระทบวัตถุ และอีก 250us ในการกลับมา
ความเร็วเสียง c โดยประมาณในอากาศแห้งกำหนดโดย  สมการ:

  • c = 331.5 + 0.6 * [อุณหภูมิอากาศเป็นองศาเซลเซียส]
    ที่ 20°C,
  • c = 331.5 + 0.6 * 20
  • c = 343.5 m/s
    ถ้าเราแปลงความเร็วเป็นเซนติเมตรต่อไมโครวินาที เราจะได้:
  • c = 343.5 * (100/1000000)
  • c = 0.03435 cm./s

ระยะทางคือ

  • D, distance = (Δt/2)*c

หรือ

  • distance = 250*0.03435 = 8.6cm.

แทนที่จะใช้ความเร็วของเสียง เราสามารถใช้ “อัตราเร็วของเสียง” ได้เช่นกัน
อัตราเร็วของเสียง = 1 / c

อัตราเร็วของเสียง = 1 / 0.03435

อัตราเร็วของเสียง = 29.1ss/cm

ในกรณีนี้ สมการที่ใช้คำนวณระยะทางจะกลายเป็น:

  • distance = (Δt/2) / อัตราเร็วของเสียง

และสำหรับตัวอย่างด้านบน:

  • distance = 250 / 29.1
  • distance = 8.6 cm

https://www.instructables.com/Using-a-SR04/

 

แผนผังการต่อสายไฟ

https://oshwlab.com/s2insupply/arduino-automatic-waste-bin

เขียน Code: arduino Code เชื่อมต่ออัลตราโซนิคเซนเซอร์เพื่อควบคุมเซอร์โวมอเตอร์

  1. ใช้ Arduino Integrated Development Environment (IDE) เพื่อเขียนโปรแกรมที่จะควบคุมเซอร์โวมอเตอร์และเซ็นเซอร์อัลตราโซนิก
  2. กำหนดตัวแปร
    1. const int trigPin = 9; // define trigPin for ultrasonic sensor
    2. const int echoPin = 10; // define echoPin for ultrasonic sensor
    3. myservo.attach(8);  // attach the servo to pin 8
  3. ตั้งค่าเซอร์โวมอเตอร์และเซ็นเซอร์อัลตราโซนิก
  4. ในฟังก์ชันลูป ใช้เซ็นเซอร์อัลตราโซนิกเพื่อวัดระยะทางไปยังวัตถุ
  5. หากระยะทางต่ำกว่าเกณฑ์ที่กำหนด ให้เปิดใช้งานเซอร์โวมอเตอร์เพื่อเปิดถังขยะ
    1. เซ็นเซอร์อัลตราโซนิกจะใช้เพื่อวัดระยะทางไปยังวัตถุ หากระยะห่างน้อยกว่า 20 ซม. เซอร์โวมอเตอร์จะตั้งค่าเป็น 0 องศาเป็นเวลา 1 วินาที จากนั้นตั้งค่าเป็น 90 องศา
    2. หากระยะทางมากกว่า 20 ซม. เซอร์โวมอเตอร์จะตั้งค่าเป็น 90 องศา
  6. อัพโหลดโค้ดไปยังบอร์ด Arduino
  7. ทดสอบและดีบัก
  8. ทดสอบโปรแกรมโดยวางวัตถุไว้ด้านหน้าเซ็นเซอร์อัลตราโซนิก และตรวจสอบว่าเซอร์โวมอเตอร์เคลื่อนที่เพื่อเปิดถังขยะ
  9. ดีบักปัญหา ที่เกิดขึ้นโดยใช้เครื่องมือดีบักในตัว Arduino IDE และตรวจหาข้อผิดพลาดทางไวยากรณ์หรือข้อผิดพลาดเชิงตรรกะในโค้ดของเรา

ตัวอย่าง Arduino Code เชื่อมต่ออัลตราโซนิคเซนเซอร์เพื่อวัดระยะทางไปยังวัตถุ

 

ตัวอย่าง Arduino Code เชื่อมต่ออัลตราโซนิคเซนเซอร์เพื่อวัดระยะทางไปยังวัตถุและควบคุมเซอร์โวมอเตอร์

 

Posted on

การต่อเซ็นเซอร์ที่มีเอาต์พุตเป็น NPN ร่วมกับอาดูโน่

เซ็นเซอร์ที่มี เอาต์พุต เป็นชนิด NPN
หมายความว่าในสถานะปกติที่ยังไม่พบชิ้นงานใดๆ
เอาต์พุต จะมีสถานะเป็น Logic High
เมื่อเซ็นเซอร์ตรวจพบชิ้นงานสถานะของ เอาต์พุต จะเปลี่ยน เป็น Logic Low

 

เราสามารถประโยช์การเปลี่ยนแปลงสัญยาณเอาต์พุตของเซ็นเซอร์ เอาไปใช้ในการควบคุมอุปกรณ์ เอาต์พุต อย่างเช่น  Rejector ได้

เซ็นเซอร์ที่มี เอาต์พุต เป็นชนิด PNP
หมายความว่าในสถานะปกติที่ยังไม่พบชิ้นงานใดๆ
เอาต์พุตจะมีสถานะเป็น Logic Low
เมื่อเซ็นเซอร์ตรวจพบชิ้นงานสถานะของ เอาต์พุต จะเปลี่ยน เป็น Logic High

*การใช้งานเซ็นเซอร์ที่มี เอาต์พุต เป็นชนิด PNP
ต้องระวังเรื่องแรงดัน เราควรจะเลือกรุ่นที่มีแรงดันเป็น 5 โวลท์

* หากใช้เซ็นเซอร์ที่รับไฟเลี้ยง 12 โวลท์ หรือ 24 โวลท์สถานะ เอาต์พุต
จะเท่ากับแหล่งจ่ายนั่นคือ 12 โวลท์หรือ 24 โวลท์
จะทำให้อาดูโน่เกิดความเสียหาย

* หากมีความจำเป็นต้องใช้เซนเซอร์ที่ใช้แรงดัน 12 หรือ 24 โวลท์

แนะนำให้ต่อตัวต้านทาน 2K อนุกรม