Menu

How does object ID from physical devices reflect on field panels?

penpentoro
2015-12-21
2015-12-21
  • penpentoro

    penpentoro - 2015-12-21

    We know that each BACnet field panel connects to multiple physical devices (TECs), and it should also talk to the server (HMI). Each BACnet device should have unique object identifiers, but imagine TEC1 and TEC2 both have the same object ID (e.g. analog value 1) how does the code reflect/distinguish these two Object IDs at the field panel? Does it create a new ID for any duplicate object ID and keep a table to keep track of this? I haven't been able to find relative java file/ function in the code... Does anyone know about this? Thanks!

     
  • penpentoro

    penpentoro - 2015-12-21

    I notice that in LocalDevice.java, if a newly added object has the same oid with an existing one... it justs throw an error, looks like there's no mapping, am I right?

      public void addObject(BACnetObject obj) throws BACnetServiceException {
            if (getObject(obj.getId()) != null)
                throw new BACnetServiceException(ErrorClass.object, ErrorCode.objectIdentifierAlreadyExists);
            if (getObject(obj.getObjectName()) != null)
                throw new BACnetServiceException(ErrorClass.object, ErrorCode.duplicateName);
             //Ensure that all required properties have values.
            obj.validate();
            localObjects.add(obj);
    
            // Create a reference in the device's object list for the new object.
            getObjectList().add(obj.getId());
        }
    
     

    Last edit: penpentoro 2015-12-21

Log in to post a comment.