Skip to main content

NRP — Node Reach Protocol. AAP for the physical world.

Project description

NRP — Node Reach Protocol

AAP for the physical world.

PyPI License: MIT Tests

Website · AAP Spec · Halyn


NRP implements the AAP spec for physical nodes: robots, IoT sensors, industrial machines, drones, vehicles.

The Physical World Rule

For nodes where actions have irreversible physical consequences, Autonomous (Level 4) is forbidden by spec. Not configurable. Not overridable.

4 methods. Any device.

from nrp import NRPDriver, NRPManifest, NRPAddress, ShieldRule, ShieldOperator

class MyRobot(NRPDriver):
    def manifest(self):
        return NRPManifest(
            address=NRPAddress.parse("nrp://factory/robot/arm-1"),
            description="6-DOF robot arm",
            version="1.0.0",
        )
    def observe(self): ...       # read state — no side effects
    def act(self, action, params): ...  # execute action
    def shield_rules(self):      # unbreakable constraints
        return [
            ShieldRule("force_n", ShieldOperator.MAX, max_value=50.0, unit="N"),
        ]

AAP Ecosystem

Layer Project Role
Spec AAP Protocol definition
Physical NRP (this) AAP for robots, IoT, machines
Full system Halyn Complete demonstration

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nrprotocol-1.0.0.tar.gz (10.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nrprotocol-1.0.0-py3-none-any.whl (9.5 kB view details)

Uploaded Python 3

File details

Details for the file nrprotocol-1.0.0.tar.gz.

File metadata

  • Download URL: nrprotocol-1.0.0.tar.gz
  • Upload date:
  • Size: 10.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for nrprotocol-1.0.0.tar.gz
Algorithm Hash digest
SHA256 9f1aa240b847230fa7d8df34e4c06dc55a6bb5cc669b6085c79ca5621182bba1
MD5 b9c8b693550ce49e7c92d932113ca764
BLAKE2b-256 4bd461e6873f3aa649637f84e68dc225696bb39f4acd3eaeee5f14091720b995

See more details on using hashes here.

File details

Details for the file nrprotocol-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: nrprotocol-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 9.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for nrprotocol-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b3bf87abb2c8cea338f32fa917007546218d59d1f2d51ea0e0f41ce1e210fc82
MD5 62688aa300278f643a775e83795e6bb6
BLAKE2b-256 ba387b70ad03b6234c6cd53d8d28267e58858f9be961584385a33d1367437c55

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page