[EN] ulab EP 5 numerical

บThe ulab EP 5 discusses the numerical submodule used to calculate the minimum, maximum, sum, mean, and standard deviation. Enable convenience for working in calculating preliminary statistics. The article describes the functionality of the numerical submodule with an example program to illustrate how it works.

[TH] Queue Data Structure

บทความนี้แนะนำการใช้คลาส list ใน Micropython มาประยุกต์เป็นโครงสร้างข้อมูลคิวที่มีจำนวนสมาชิกจำกัด และทำงานตามหลักการ FIFO (First-In-First-Out) ซึ่งสามารถนำไปประยุกต์ใช้ได้หลากหลาย เช่น ใช้เป็นที่เก็บข้อมูลและเมื่อข้อมูลมีเต็มแล้วแต่ต้องการนำข้อมูลใหม่ใส่เข้าไป ดังนั้น จึงต้องนำข้อมูลเก่าอันดับที่ 1 ที่ใส่เข้ามาออกไป ซึ่งตรงกับหลักการของ FIFO เป็นต้น โดยตัวอย่างในบทความนี้ใช้บอร์ด dCore-miniML (ในภาพที่ 1) อ่านข้อมูลอุณหภูมิของชิพมาเก็บไว้ในโครงสร้างแบบคิวและแสดงผลออกมาในลักษณะของกราฟแท่ง และไมโครไพธอนที่นำมาใช้เป็นเฟิร์มแวร์รุ่น 1.16 (2021-06-23) สำหรับ ESP Module (SPIRAM)

ภาพที่ 1 ตัวอย่างการวาดกราฟด้วยข้อมูลที่เก็บในโครงสร้างข้อมูลแบบคิว

[EN] ESP32 : Display of rotation squares with application ulab.

This article uses the ESP32 to rotate squares using the ulab library and to display the results of the calculations on the ST7735s LCD graphics module as written in the previous article. The example of the program consists of rotating a square in a clockwise direction and rotating multiple squares in opposite directions

(Video 1 An example of the performance with the display speed adjusted.)

[EN] ulab EP 4 linalg

EP 4 of the ulab library is about the linalg submodule used for linear algebra calculations which is applied to solve linear problems. And it is a tool to predict or study the nature of what happens in a linear way. This article discusses the functions of the linalg submodule and some basic usage examples.

[TH] u8g2 Library

จากบทความการใช้ ESP8266 กับจอแสดงผลกราฟิกแบบ OLED ซึ่งเขียนด้วยภาษาไพธอนจะพบว่าการทำงานนั้นสะดวกรวดเร็วในระดับดี แต่เมื่อต้องใช้กับไมโครคอนโทรลเลอร์ตัวอื่นที่ไม่สามารถใช้ Micropython หรือ CircuitPython ได้นั้นจะต้องทำอย่างไร ซึ่งหนึ่งในหลายทางเลือกคือไลบรารี u8glib หรือ u8g2 (Universal 8 bit Graphics Library) ที่ออกแบบมาเพื่อทำงานกับกราฟิกแบบ 8 บิตแบบโมโนโครมทั้งผ่านการสื่อสารแบบ I2C หรือ SPI โดยบทความนี้ใช้อุปกรณ์ต่อเชื่อมกันดังภาพที่ 1 ด้วยการใช้ OLED แบบ I2C

ภาพที่ 1 การเชื่อมต่อ STM32F401CCU6 กับ OLED แบบ I2C

[EN] ulab EP1 Getting Started

For ESP8266’s MicroPython to perform mathematical calculations like using Python’s numpy library, MicroPython with ulab must be installed. You can download firmware for ESP8266 HERE. For normal ESP32 and with additional PSRAM (SPIRAM).

This article is an introduction to ulab and an overview of the libraries within ulab for further application.

(Figure. 1 MicroPython+ulab firmware on RSP8266

[TH] ulab v3.0

จากบทความ ulab ก่อนหน้านี้จะพบว่า Micropython สามารถใช้งานคำสั่งเกี่ยวกับการประมวลผลชุดข้อมูลเหมือนกับใช้ใน Numpy ได้ผ่านทางไลบรารี ulab ซึ่งก่อนหน้านี้ทีมผู้เขียนใช้งานรุ่น 0.54.0 ซึ่งเก่ากว่ารุ่นปัจจุบัน คือ 3.0.1 ทำให้เกิดบทความนี้ขึ้นมา โดยบทความกล่าวถึงวิธีการสร้าง Micropython ที่ผนวกไลบรารี ulab เข้าไป และใช้งานกับ esp32 รุ่นที่มี SPIRAM

ภาพที่ 1 รายการโมดูลของ ulab

ulab3

จากภาพที่ 1 จะพบว่า โครงสร้างไลบรารีของ ulab เปลี่ยนแปลงไปจากเดิม ทำให้การเขียนโปรแกรมจากตัวอย่างก่อนหน้านี้ต้องมีการปรับเปลี่ยน ซึ่งภายใต้ ulab จะมีไลบรารีของ numpy และ scipy เข้ามา ซึ่งรายละเอียดของ numpy ที่รองรับเป็นดังนี้