Pedometer ในแอปพลิเคชันมือถือ: คืออะไร ทำงานอย่างไร และใช้ที่ไหนบ้าง

ผู้แต่ง: IT Sectr เผยแพร่เมื่อ: 2026-03-25 เวลาอ่าน: 8 นาที

Pedometer (เครื่องนับก้าว) ในแอปพลิเคชันมือถือเป็นกลไกซอฟต์แวร์-ฮาร์ดแวร์สำหรับนับจำนวนก้าวของผู้ใช้โดยอาศัยข้อมูลจากมาตรความเร่งและไจโรสโคป สมาร์ทโฟนสมัยใหม่ใช้อัลกอริทึมการเรียนรู้ของเครื่องร่วมกับเซ็นเซอร์เพื่อตรวจจับการเดิน การวิ่ง และกิจกรรมทางกายภาพประเภทอื่นๆ ได้อย่างแม่นยำ ตามเอกสาร Apple HealthKit Documentation, 2025 ความแม่นยำของการนับก้าวบนอุปกรณ์สมัยใหม่ สูงถึง 95–97% ในระหว่างการเดินปกติ

ประเด็นสำคัญ

  • Pedometer (เครื่องนับก้าว) คือฟังก์ชันนับก้าวโดยอาศัยการวิเคราะห์ข้อมูลจากมาตรความเร่ง ไจโรสโคป และอัลกอริทึมการเรียนรู้ของเครื่อง
  • อัลกอริทึม pedometer สมัยใหม่สามารถแยกแยะ การเดิน การวิ่ง และการขึ้นบันได โดยระบุประเภทกิจกรรมของผู้ใช้โดยอัตโนมัติ
  • เซ็นเซอร์หลักสำหรับนับก้าวคือ มาตรความเร่ง ซึ่งบันทึกความเร่งบนสามแกนในแต่ละก้าว
  • บน iOS นักพัฒนาเข้าถึง pedometer ผ่าน CMPedometer จาก Core Motion บน Android — ผ่าน Sensor API ด้วย TYPE_STEP_COUNTER
  • ความแม่นยำของการนับก้าวขึ้นอยู่กับ ตำแหน่งของอุปกรณ์: pedometer ทำงานแม่นยำที่สุดเมื่อสมาร์ทโฟนอยู่ในกระเป๋ากางเกงหรือบนเข็มขัด

Pedometer ในแอปมือถือคืออะไร?

Pedometer (เครื่องนับก้าว) ในแอปพลิเคชันมือถือคือฟังก์ชันที่กำหนดจำนวนก้าวของผู้ใช้โดยอาศัยข้อมูลจากเซ็นเซอร์ตรวจจับความเคลื่อนไหวในตัวของสมาร์ทโฟน ต่างจาก pedometer เชิงกลในอดีต pedometer มือถือใช้เซ็นเซอร์ไมโครอิเล็กโตรแมคคานิคอล (MEMS) และอัลกอริทึมการประมวลผลสัญญาณดิจิทัลเพื่อนับการเคลื่อนที่อย่างแม่นยำ การนำไปใช้สมัยใหม่ไม่เพียงนับก้าวเท่านั้น แต่ยัง จำแนกประเภทกิจกรรม อีกด้วย: การเดิน การวิ่ง การขึ้นบันได

การบูรณาการ pedometer เข้ากับอุปกรณ์มือถือเกิดขึ้นได้ด้วยการเปิดตัวโคโปรเซสเซอร์เคลื่อนที่ M7 ใน iPhone 5s ปี 2013 ซึ่งรวบรวมข้อมูลจากเซ็นเซอร์อย่างต่อเนื่องด้วยการใช้พลังงานน้อยที่สุด ปัจจุบันสมาร์ทโฟนสมัยใหม่ทั้งหมดมีการรองรับฮาร์ดแวร์สำหรับนับก้าวในระดับ เซ็นเซอร์ฮับ — ชิปเฉพาะที่ประมวลผลข้อมูลเซ็นเซอร์เฉื่อยโดยไม่ต้องปลุกโปรเซสเซอร์หลัก

การนับก้าวบนสมาร์ทโฟนทำงานอย่างไร

การนับก้าว บนสมาร์ทโฟนอาศัยการวิเคราะห์สัญญาณมาตรความเร่ง ซึ่งวัดความเร่งของอุปกรณ์ตามสามแกนตั้งฉาก (X, Y, Z) เมื่อเดิน แต่ละก้าวจะสร้างรูปแบบความเร่งที่มีลักษณะเฉพาะ: อันแรกคือจุดสูงสุดขึ้นเมื่อยกขา จากนั้นจุดสูงสุดลงเมื่อลงสู่พื้น ความถี่ก้าว (เคเดนซ์) คือ 100–130 ก้าว/นาทีสำหรับการเดิน และ 150–180 ก้าว/นาทีสำหรับการวิ่ง ในขณะที่แอมพลิจูดความเร่งอยู่ที่ 2–6 ม./วินาที²

การประมวลผลสัญญาณมาตรความเร่ง

สัญญาณดิบจาก มาตรความเร่ง มีสัญญาณรบกวนและการรบกวนความถี่สูง ดังนั้นขั้นตอนแรกของการประมวลผลคือการกรองความถี่ต่ำผ่าน (low-pass filter) ด้วยความถี่ตัด 3–5 เฮิรตซ์ หลังการกรอง จะคำนวณ เวกเตอร์ความเร่ง: a = sqrt(x² + y² + z²) ซึ่งแยกความเร่งที่เกี่ยวข้องกับการเคลื่อนที่โดยไม่ขึ้นกับทิศทางของอุปกรณ์ จากนั้นอัลกอริทึมจะตรวจจับค่าสูงสุดเฉพาะที่ในสัญญาณ — แต่ละค่าสูงสุดสอดคล้องกับหนึ่งก้าว

เพื่อ ลดผลบวกลวง (เช่น การสั่นในยานพาหนะ) จึงใช้เกณฑ์เพิ่มเติม: แอมพลิจูดก้าวต่ำสุด (โดยทั่วไป >1.2 ม./วินาที²) ช่วงเวลาต่ำสุดระหว่างก้าว (300–400 มิลลิวินาทีสำหรับการเดิน) และการตรวจสอบความเป็นคาบของสัญญาณผ่านการสหสัมพันธ์อัตโนมัติ หากช่วงเวลาระหว่างจุดสูงสุดไม่สม่ำเสมอ ลำดับนั้นจะถูกทำเครื่องหมายว่าเป็นการเคลื่อนที่แบบสุ่มและไม่นับเป็นก้าว

การตรวจจับก้าวผ่านมาตรความเร่ง

อัลกอริทึมพื้นฐาน การตรวจจับก้าว ใช้วิธีการตรวจจับแบบเกณฑ์: ระบบค้นหาช่วงเวลาที่สัญญาณมาตรความเร่งเกินเกณฑ์ที่กำหนดแล้วกลับสู่ระดับพัก แต่ละเหตุการณ์ดังกล่าวถือเป็นก้าวที่เป็นไปได้ มีสองแนวทาง: การตรวจจับจุดสูงสุด (peak detection) และการตัดผ่านศูนย์ (zero-crossing) การตรวจจับจุดสูงสุดจะจับค่าสูงสุดของสัญญาณ ในขณะที่การตัดผ่านศูนย์จะตรวจจับช่วงเวลาที่สัญญาณตัดผ่านค่าเฉลี่ย ซึ่ง ขึ้นอยู่กับ แอมพลิจูดก้าวน้อยกว่า

วิธีการแบบเกณฑ์และอัลกอริทึมแบบปรับตัว

อัลกอริทึมการนับก้าวสมัยใหม่ ใช้เกณฑ์แบบปรับตัวที่ปรับตามรูปแบบการเดินของผู้ใช้โดยอัตโนมัติ ระบบวิเคราะห์ความแปรปรวนของสัญญาณในช่วง 2–3 วินาทีที่ผ่านมาและคำนวณเกณฑ์ไดนามิกเป็นค่ารากที่สองของค่าเฉลี่ยกำลังสอง (RMS) คูณด้วยสัมประสิทธิ์ ซึ่งช่วยให้ นับก้าวได้อย่างถูกต้อง ทั้งในระหว่างการเดินช้าและการวิ่งแรง โดยไม่ต้องปรับเทียบข้ามระหว่างประเภทกิจกรรม

อัลกอริทึมการนับก้าวและการเรียนรู้ของเครื่อง

การนำ pedometer ไปใช้สมัยใหม่ไม่เพียงใช้การตรวจจับจุดสูงสุดเท่านั้น แต่ยังใช้การเรียนรู้ของเครื่องเพื่อจำแนกรูปแบบการเคลื่อนไหวอีกด้วย โมเดลโครงข่ายประสาทเทียมได้รับการฝึกด้วยการบันทึกการเคลื่อนไหวจริงหลายพันชั่วโมงจากสถานการณ์ต่างๆ: การเดินบนพื้นราบ การขึ้นบันได การวิ่ง การเดินทางในยานพาหนะ คุณลักษณะนำเข้าประกอบด้วยอนุกรมเวลาของมาตรความเร่งและไจโรสโคป และผลลัพธ์คือความน่าจะเป็นที่ส่วนสัญญาณปัจจุบันสอดคล้องกับ การเคลื่อนที่ของมนุษย์

โมเดลโครงข่ายประสาทเทียมสำหรับการจำแนกกิจกรรม

ตาม งานวิจัย Google Activity Recognition โมเดลที่ใช้โครงข่ายประสาทเทียมแบบคอนโวลูชัน (CNN) มีความแม่นยำในการรู้จำการเดิน 98% บนชุดข้อมูลมาตรฐาน บนอุปกรณ์ Apple ใช้ Core ML กับโมเดลการจำแนกกิจกรรมที่ฝึกด้วยข้อมูลจากอาสาสมัครมากกว่า 100,000 คน โมเดลที่ปรับแต่งแล้วทำงานบนอุปกรณ์โดยตรง (การอนุมานบนอุปกรณ์) ซึ่งช่วยให้ ประมวลผลได้ทันที และรักษาความเป็นส่วนตัวของผู้ใช้

swift
import CoreMotion

class PedometerObserver {
    private let pedometer = CMPedometer()

    func startTracking() {
        guard CMPedometer.isStepCountingAvailable() else { return }
        
        pedometer.startUpdates(from: Date()) { data, error in
            guard let data = data else { return }
            
            let steps = data.numberOfSteps.intValue
            let distance = data.distance?.doubleValue
            let floorsAscended = data.floorsAscended?.intValue
            
            // อัปเดต UI ด้วยจำนวนก้าว
            DispatchQueue.main.async {
                // self.stepsLabel.text = "\(steps) ก้าว"
            }
        }
    }

    func stopTracking() {
        pedometer.stopUpdates()
    }
}

Pedometer บน iOS และ Android: API และความสามารถ

บน iOS การเข้าถึง pedometer ใช้คลาส CMPedometer จากเฟรมเวิร์ก Core Motion CMPedometer ให้ข้อมูลไม่เพียงจำนวนก้าวเท่านั้น แต่ยังรวมถึงระยะทางที่เดิน จำนวนชั้น (การขึ้น) ความเร็วในการเดิน และระยะเวลากิจกรรม ข้อมูลพร้อมใช้งานทั้งแบบเรียลไทม์ (startUpdates) และสำหรับช่วงเวลาใดๆ ในอดีต (queryPedometerData) โคโปรเซสเซอร์เคลื่อนที่ (M-ซีรีส์) ประมวลผลข้อมูลเซ็นเซอร์ในระดับฮาร์ดแวร์ ซึ่ง ลดการใช้พลังงานลง 80% เมื่อเทียบกับการประมวลผลด้วยซอฟต์แวร์

บน Android ฟังก์ชัน pedometer ถูกนำไปใช้ผ่านเซ็นเซอร์ฮาร์ดแวร์สองตัว: TYPE_STEP_COUNTER (ตัวนับก้าวสะสมตั้งแต่บูต) และ TYPE_STEP_DETECTOR (สร้างเหตุการณ์ในแต่ละก้าว) TYPE_STEP_COUNTER ไม่ต้องการการปรับเทียบและไม่ใช้พลังงานโปรเซสเซอร์ — ข้อมูลได้รับการอัปเดตในระดับฮาร์ดแวร์ของเซ็นเซอร์ฮับ สำหรับการเข้าถึงสถิติก้าวสะสมรายวัน จะใช้ Google Fit API กับบันทึก DataType.TYPE_STEP_COUNT_DELTA

kotlin
import android.hardware.Sensor
import android.hardware.SensorEvent
import android.hardware.SensorEventListener
import android.hardware.SensorManager

class StepCounter(
    private val sensorManager: SensorManager
) : SensorEventListener {

    private var totalSteps = 0
    private var previousSteps = -1

    fun startListening() {
        val sensor = sensorManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER)
        sensor?.let {
            sensorManager.registerListener(this, it, SensorManager.SENSOR_DELAY_NORMAL)
        }
    }

    override fun onSensorChanged(event: SensorEvent) {
        if (previousSteps < 0) {
            previousSteps = event.values[0].toInt()
        }
        val currentSteps = event.values[0].toInt()
        totalSteps = currentSteps - previousSteps
    }

    fun getStepCount(): Int = totalSteps

    override fun onAccuracyChanged(sensor: Sensor?, accuracy: Int) {}
}

ความแม่นยำและข้อจำกัดของ pedometer มือถือ

ความแม่นยำของ pedometer ขึ้นอยู่กับหลายปัจจัย: ตำแหน่งของสมาร์ทโฟน (ในมือ กระเป๋า หรือกระเป๋า) ประเภทกิจกรรม (เดิน วิ่ง ขึ้นบันได) และคุณภาพของเซ็นเซอร์ เมื่อสมาร์ทโฟนอยู่ในกระเป๋ากางเกง ความแม่นยำสูงถึง 93–97%; ในกระเป๋าหรือเป้สะพายหลัง ลดลงเหลือ 70–85% รูปแบบการเดินของผู้ใช้ก็มีผลต่อความแม่นยำเช่นกัน: การเดินลากเท้า ที่มีแอมพลิจูดความเร่งต่ำทำให้เกิดข้อผิดพลาดมากกว่าก้าวที่มั่นคง

ข้อจำกัด หลักของ pedometer มือถือรวมถึง: ไม่สามารถนับก้าวระหว่างการเคลื่อนที่ช้ามาก (<1.5 กม./ชม.) ผลบวกลวงจากการเดินทางในยานพาหนะ ความแม่นยำลดลงระหว่างการวิ่งความเร็วต่ำ (การวิ่งเหยาะ) และอิทธิพลของท่าทางระหว่างการสนทนา เพื่อลดข้อผิดพลาด แอปพลิเคชันสมัยใหม่ใช้การรวมกันของเซ็นเซอร์ (มาตรความเร่ง + ไจโรสโคป + บารอมิเตอร์) และ การเรียนรู้ของเครื่อง เพื่อกรองสิ่งรบกวน บารอมิเตอร์ ช่วยตรวจจับการขึ้นบันไดและการเปลี่ยนแปลงระดับความสูง โดยไม่รวมก้าวปลอมในลิฟต์

คำถามที่พบบ่อย

Pedometer ในโทรศัพท์ทำงานอย่างไร?

Pedometer ในโทรศัพท์ใช้มาตรความเร่ง ซึ่งบันทึกความเร่งในแต่ละก้าว อัลกอริทึมวิเคราะห์จุดสูงสุดของความเร่งบนสามแกน กรองสัญญาณรบกวน และกำหนดจำนวนก้าว โมเดลสมัยใหม่ยังใช้ไจโรสโคปและการเรียนรู้ของเครื่องเพื่อปรับปรุงความแม่นยำและจำแนกกิจกรรม

Pedometer บนสมาร์ทโฟนแม่นยำแค่ไหน?

เมื่อถือสมาร์ทโฟนใน กระเป๋ากางเกง ความแม่นยำสูงถึง 95–97% ในการเดินปกติ ในกระเป๋าหรือเป้สะพายหลัง ความแม่นยำลดลงเหลือ 70–85% รูปแบบการเดินและประเภทพื้นผิวก็มีผลต่อความแม่นยำเช่นกัน — พื้นที่ไม่เรียบ อาจทำให้เกิดข้อผิดพลาดสูงถึง 10–15%

Pedometer สามารถทำงานโดยไม่มีอินเทอร์เน็ตได้หรือไม่?

ใช่ pedometer ทำงาน ได้แบบออฟไลน์โดยไม่ต้องเชื่อมต่ออินเทอร์เน็ต การคำนวณทั้งหมดดำเนินการบนอุปกรณ์โดยใช้เซ็นเซอร์ในตัว อินเทอร์เน็ตอาจจำเป็นสำหรับการซิงค์ข้อมูลกับบริการคลาวด์ของแอปฟิตเนสหรือแสดงแผนที่เส้นทางเท่านั้น

ทำไมแอปต่างๆ ถึงแสดงจำนวนก้าวต่างกัน?

แอปต่างๆ ใช้ อัลกอริทึมต่างกัน ในการประมวลผลข้อมูลเซ็นเซอร์ เกณฑ์การตรวจจับ และวิธีการกรอง บางแอปนับก้าวจากข้อมูลมาตรความเร่งดิบ ในขณะที่บางแอปใช้ API ของระบบ (TYPE_STEP_COUNTER) และความแตกต่างในการนับอาจสูงถึง 10–15%

จะเข้าถึง pedometer ในแอป Android ได้อย่างไร?

บน Android เพื่อเข้าถึง pedometer ให้ใช้เซ็นเซอร์ TYPE_STEP_COUNTER ผ่าน Sensor API — ซึ่งให้จำนวนก้าวสะสมตั้งแต่การรีบูตอุปกรณ์ครั้งล่าสุด หากต้องการเข้าถึงก้าวของวันที่ระบุ ให้บูรณาการ Google Fit API กับประเภทข้อมูล TYPE_STEP_COUNT_DELTA

สรุป

  • Pedometer คือฟังก์ชันของอุปกรณ์มือถือที่กำหนดจำนวนก้าวโดยอาศัยข้อมูลมาตรความเร่ง MEMS และอัลกอริทึมการเรียนรู้ของเครื่อง
  • วิธีการนับก้าวหลักคือ การตรวจจับจุดสูงสุด และการตัดผ่านศูนย์ในสัญญาณมาตรความเร่ง ตามด้วยการกรองสิ่งรบกวนและเกณฑ์แบบปรับตัว
  • การนำไปใช้สมัยใหม่ใช้ โครงข่ายประสาทเทียมแบบคอนโวลูชัน เพื่อจำแนกการเดิน การวิ่ง และการขึ้นบันไดด้วยความแม่นยำสูงถึง 98%
  • บน iOS การเข้าถึง pedometer ผ่าน CMPedometer (Core Motion); บน Android — ผ่าน TYPE_STEP_COUNTER และ Google Fit API
  • การนับก้าวด้วยฮาร์ดแวร์ในระดับ เซ็นเซอร์ฮับ ไม่ปลุกโปรเซสเซอร์หลัก ใช้พลังงานน้อยกว่าการประมวลผลด้วยซอฟต์แวร์ 80%
  • ความแม่นยำของ pedometer ขึ้นอยู่กับ ตำแหน่งของอุปกรณ์: ในกระเป๋ากางเกง — สูงถึง 97%, ในกระเป๋า — 70–85% พื้นที่ไม่เรียบและการเดินช้าก็ลดความแม่นยำลงเช่นกัน
  • เพื่อลดข้อผิดพลาด ใช้ การรวมกันของเซ็นเซอร์: มาตรความเร่ง + ไจโรสโคป + บารอมิเตอร์ ซึ่งช่วยกรองก้าวปลอมระหว่างการเดินทางในยานพาหนะและตรวจจับการขึ้นบันได

เราจะพัฒนาแอปพลิเคชันบนมือถือแบบครบวงจร

IT Sectr สร้างแอปพลิเคชัน iOS และ Android สำหรับสตาร์ทอัพและธุรกิจตั้งแต่ปี 2017 เราจะให้คำแนะนำและเสนอวิธีแก้ปัญหาที่ดีที่สุดแก่คุณ

ปรึกษาโครงการ

อ่านเพิ่มเติม