This module provides a C-based interface for writing and executing trajectory data to Power PMAC systems using user shared memory. It is designed to integrate seamlessly into Power PMAC projects and supports modular inclusion via Git submodules.
It builds upon the following components:
- ppmac_tcp_server – Handles TCP communication between external clients and the Power PMAC system.
- ppmac_ushm_buffer – Manages shared memory buffers for efficient data exchange between user-space and kernel-space.
Together, these modules enable robust and flexible trajectory control for motion systems powered by Power PMAC.
Follow the steps below to add this module to your Power PMAC project:
- Clone or add this repository as a submodule in the desired path under C Language.
- Add
ppmac_tcp_serverandppmac_ushm_bufferon the Libraries folder, following the instructions present in each repository - Add the main program
- In the Power PMAC IDE, right-click on the Background Programs folder and select "Add a new...".
- Enter the name
ppmac_trajectory_writer— the same name as this repository. - When prompted to overwrite the file, select "No".
- Right-click on the created folder and select "Add" > "Existing item...".
- Select the source (
ppmac_trajectory_writer.c) and header (ppmac_trajectory_writer.h) files from this repository.
This project is licensed under the Apache 2.0 License. See the LICENSE file for details.
Leandro Martins dos Santos
Software Systems Engineer
Diamond Light Source Ltd.