試す - 無料

Learn Lisp Programming Using MCUS

Circuit Cellar

|

March 2025

Part 3—Forward Kinematics in µLisp

- Raul Alvarez

Learn Lisp Programming Using MCUS

µLisp is a dialect of the Lisp programming language for MCUs with limited RAM. In Part 1, Raul presented µLisp concepts and syntax, and extensions specific to MCUs, and in Part 2, he added extensions by using custom functions. In Part 3 of this article series, he implements a new extension to multiply matrices, and uses µLisp to implement forward kinematics for a mini robotic arm.

In this last part of the series on Lisp programming with microcontrollers, we will use everything we previously learned about µLisp programming. We will compute "forward kinematics" (the process of computing the pose of a robotic arm, based on the angles of its rotating joints), using homogeneous transformations for the three-degrees-of-freedom (3DOF) mini robotic arm presented in Part 2 of this article series [1]. To achieve this, we will implement a matrix multiplication extension to µLisp. Along the way, we will also continue to further explore the Lisp programming language, while we challenge ourselves with math and the fundamental concepts of robotic arm kinematics.

To follow the topics discussed here, you need to be familiar with Arduino and µLisp programming. Please see the first two parts of this article series for information [1, 2]. "Robot kinematics" refers to the relation between the geometry and movement of a robot. It is also desirable to have some background in robot kinematics with the Denavit-Hartenberg convention and homogeneous transformations, so I will give a simple explanation of the basics. The latter, however, is really tangential to the subject of the entire article series.

LISTS AND ARRAYS

Lists are one of the most fundamental data structures in Lisp. In Part 1, I discussed how to create them. Lines 1-2 from Listing 1 are a reminder of two equivalent methods discussed. However, there's a third method of creating lists by "consing" atoms (Lisp primordial objects) with the

Circuit Cellar からのその他のストーリー

Circuit Cellar

Circuit Cellar

Bosch Sensortec Launches BMI423 Inertial Measurement Unit

Smart wearables are always on the move-and so is their sensing technology. Bosch Sensortec introduced the BMI423, a new-generation Inertial Measurement Unit (IMU) that combines extended measurement range with low power consumption.

time to read

1 mins

February 2026

Circuit Cellar

Circuit Cellar

Renesas Releases its First Wi-Fi 6 and Wi-Fi/Bluetooth LE Combo MCUs for IoT and Connected Home Applications

Renesas Electronics Corp., a premier supplier of advanced semiconductor solutions, has introduced the RA6W1 dual-band Wi-Fi 6 wireless microcontroller (MCU), along with the RA6W2 MCU that integrates both Wi-Fi 6 and Bluetooth Low Energy (LE) technologies.

time to read

1 mins

February 2026

Circuit Cellar

Circuit Cellar

Airborne Embedded Software: Simplifying Safety and Security

With modern airborne systems no longer isolated computing environments, any vulnerabilities introduced into these increasingly connected devices can quickly become much more than just a cybersecurity issue, but a safety risk no one can afford.

time to read

4 mins

February 2026

Circuit Cellar

Circuit Cellar

Wearable LIDAR Spatial Audio Navigator for Visually-Impaired Individuals

Built with a Raspberry Pi Pico, a TF-Luna LiDAR Sensor, and a Hand-Held Potentiometer

time to read

13 mins

February 2026

Circuit Cellar

Circuit Cellar

ADRs: The Missing Memory in Embedded Projects

Remembering and communicating why design decisions were made and the reasons behind their particular implementations can be critical when it comes to developing software as a team and maintaing that software in the future. This time Jacob shares his thoughts on and experience with one of the most valuable tools to extend the reach of software development memories.

time to read

9 mins

February 2026

Circuit Cellar

Circuit Cellar

Sensors: From Canned Tuna to Caviar

In the first installment of a new Circuit Cellar column on sensors, Brian Chee looks at how sensors figure into larger application packages and when \"just enough sensors\" can be the perfect solution.

time to read

10 mins

February 2026

Circuit Cellar

Circuit Cellar

Embedded DSP with the RT1010 MCU

Part 2: Delay, Flanger, IIR, and Overdrive

time to read

15 mins

February 2026

Circuit Cellar

Circuit Cellar

Omnion Power Provides Modular, Scalable DC Power System Monitoring and Control with New Pulsar 200 Controller

Omnion Power is helping to redefine the role of the DC power system controller with its next-generation Pulsar 200 platform.

time to read

1 mins

February 2026

Circuit Cellar

Circuit Cellar

Robot Operating System 2 (ROS 2): Core Concepts, Architecture, and Real-World Capabilities

The Robot Operating System 2 (ROS 2) is an open-source, middleware framework that addresses the communication and coordination challenges inherent in modern, distributed robotic systems. In this article, Pedro details how ROS 2's architectural foundations successfully address the core limitations of its predecessor, ROS 1, using real-world scenarios, and steps for setting up the ROS 2 Foxy environment on Ubuntu Linux distro, and cross-platform communication between a host PC and a Raspberry Pi module.

time to read

14 mins

February 2026

Circuit Cellar

Circuit Cellar

Ambiq Unveils Atomiq, the World's First Ultra-Low Power NPU SoC Built on SPOT

Ambiq Micro, Inc., a recognized leader in ultra-low-power semiconductor solutions for edge AI, announced Atomiq, the highly anticipated system-on-chip (SoC) integrating a Neural Processing Unit (NPU) designed to enable real-time, always-on artificial intelligence at the edge.

time to read

1 mins

February 2026

Listen

Translate

Share

-
+

Change font size