ht9045-contact-force

Explains HT9045 Contact Force calculation logic, SLK cylinder diameter tables, and EP alarm handling.

Updated May 28, 2026
One-click install
npx skills add https://github.com/HPI-Jimmy-Chiu/HT904_V899 --skill ht9045-contact-force-hpi-jimmy-chiu
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: ht9045-contact-force
Source: https://github.com/HPI-Jimmy-Chiu/HT904_V899/tree/main/.agents/skills/ht9045-contact-force
Command: npx skills add https://github.com/HPI-Jimmy-Chiu/HT904_V899 --skill ht9045-contact-force-hpi-jimmy-chiu

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Engineers maintaining the HT9045 test handler often struggle to trace how Contact Force is computed across cContact.cpp and ContactForce.cpp, including Min/Max Force limits, Compliance Unit factors, and EP pressure alarm conditions. This Skill consolidates that knowledge into a single reference so questions about force calculation, cylinder diameters, and alarm codes can be answered without reading 19,000 lines of source code. ## Core Features & Use Cases - Force Calculation Reference: Documents the full chain from ShowArmAndDeviceForce through CalculateTotalAirForce, GetMinForce, and GetMaxIndexForceLimit, including formulas for per-device force, D28 diameter-based limits, and SLK class defaults. - Configuration Lookup Tables: Provides quick-reference tables for Kit Diameter Min Force, Compliance Unit positions, Index Press Type limits, DutCount/HeadCount per TestMode, and D04/D27/D28 config switches. - EP Alarm Diagnostics: Explains WAR1605 EP pressure deviation checks, ADAM_Alarm_Kg tolerance tiers, proportional valve voltage alarms WAR16322/WAR16323, and EP Leakage compensation. - Use Case: When a customer reports that a 30mm kit cannot reach the expected force, use this Skill to determine that the D28 limit with EP_MAXKPA≤500 caps the force at roughly 9.01 kg per Compliance Unit. ## Quick Start Ask how the maximum contact force is calculated for a 40mm SLK cylinder on an 85 kg index press machine.

Frequently Asked Questions about ht9045-contact-force

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How is Contact Force calculated on the HT9045 test handler?▼

Contact Force starts from dBallCount times dSingleGf to get per-device force, multiplied by DutCount for total force, then divided by HeadCount and the Compliance Unit factor. CalculateTotalAirForce in cContact.cpp applies GetMinForce and GetMaxIndexForceLimit as bounds.

What is the maximum force for each SLK cylinder diameter?▼

With D28 limit enabled, max force equals the cylinder area times a coefficient of 5.0 (EP≤500kPa) or 6.0 (EP>500kPa) times 0.0101972 times the Compliance Unit factor. For example, 30mm yields about 9.01 kg and 40mm about 16.02 kg at coefficient 5.

What does the Compliance Unit position setting control?▼

The scrbSLK Position defines how many devices share one compliance unit, setting fComplianceUnit from 0.125 (8 devices per unit) up to 2.0 (2 devices per 4 units). This factor directly scales the per-head force in CalculateTotalAirForce.

Why does alarm WAR1605 EP pressure deviation occur?▼

WAR1605 triggers when the EP readback value differs from the setpoint beyond the allowed range, which scales from ±0.25 kg under 5 kg up to ±2.0 kg for 61-120 kg. It typically indicates EP air leakage and is checked before each index test and during Auto Height.

When is the D28 max force limit by diameter applied?▼

The D28 diameter-based limit only applies when IniConfig.bD28MaxForceLimitByDiameter is set to true. Without it, force limits fall back to the SLK class defaults and the Index Press Type maximum, which defaults to 85 kg.