SENSR is built with a modular architecture enabling large scale installations with hundreds of LiDARs along with simple setups limited to a single LiDAR. There are two types of SENSR application nodes required for a complete system:
- Main node
- Oversees the overall processing.
- Merges the perception result for one or more algo nodes,
- Manages user interfaces and data output,
- Algo node
- Processes LiDAR data for a related set of LiDAR sensors (typically a geographic location).
- The Algo node is the minimal unit configurable with unique parameters.
- Algo nodes are typically allocated according to the characteristics of the environment that you want to observe (areas with many vehicles, areas with only pedestrians, areas with low sensor installation density, and so forth). Overseparation of Algo nodes may, however, cause excessive load on the main node.
- Multiple Algo nodes can be created using a single virtual machine or server.
SENSR operates within a Kubernetes environment to ensure system availability and to facilitate communication between Main and Algo nodes in distributed systems.
The high-level logical architecture tested for this paper using Seoul Robotics SENSR on our CV platform is as follows:
![Computer Vision architecture with Seoul Robotics SENSR](/static/media/9198938f-8c47-5a0e-82d9-6db6a62cd3f7/DAM-6fdd062d-7415-4ec4-941e-1d8b336764a1/out/sensr-hla-original=GUID-78F0A466-D604-454A-960C-1370E38D831C=1=en-us=Low.png)
In the above diagram, we deployed a 1 x Main Node that manages the cluster. We also deployed 3 x Algo nodes that process the LiDAR data. Each Algo Node has a GPU assigned. All nodes were virtualized on the CV VxRail platform.
Note that both a SENSR application configured for distributed processing and the underlying VxRail platform both use the terms cluster and node. In the case of the VxRail, we have a VMware cluster that consists of Dell PowerEdge server nodes. For Seoul Robotics SENSR, one Main node together with one or more Algo nodes are deployed withing Kubernetes cluster environment to ensure system availability and to facilitate communication between the Main and Algo nodes in distributed systems.