BACnet IP Network Scanner Development
Budget: $30 – $250 SGD
The project entails developing a Java-based BACnet network scanner and data storage system to discover and interact with BACnet devices across a network. The system will employ the BACnet protocol for device discovery, data retrieval, and storage of instance data into an SQL database.
Network Scanning and Device Discovery:
Utilize BACnet discovery mechanisms like Who-Is and IP range scanning to identify BACnet devices on the network. Implement mechanisms to retrieve device details such as device IDs, IP addresses, and other relevant information.
Data Retrieval and Storage:
Establish communication with discovered devices using BACnet protocol (UDP/IP or Ethernet). Implement functionality to read specific BACnet object properties (e.g., Analog Value, Binary Value) from each device using libraries like BACnet4J for efficient data retrieval.
Database Integration:
Design and implement an SQL database schema to store BACnet data. Create tables for devices, object types, object instances, and their properties. Utilize JDBC for database connectivity and implement CRUD operations to insert instance data into the database.
Error Handling and Logging:
Implement robust error handling mechanisms to manage communication failures, timeouts, and other network issues. Utilize Java logging frameworks to record significant events, errors, and debugging information for effective troubleshooting.
Security Considerations:
Adhere to network security policies and practices. Implement data encryption for secure transmission of sensitive information such as database credentials and BACnet communication.
Deliverables:
Provide a fully functional Java application with documented source code. Include setup instructions, usage guidelines, and a concise user manual for system administrators. Ensure the application meets performance benchmarks and scalability requirements for handling large-scale BACnet networks.
Network Scanning and Device Discovery:
Utilize BACnet discovery mechanisms like Who-Is and IP range scanning to identify BACnet devices on the network. Implement mechanisms to retrieve device details such as device IDs, IP addresses, and other relevant information.
Data Retrieval and Storage:
Establish communication with discovered devices using BACnet protocol (UDP/IP or Ethernet). Implement functionality to read specific BACnet object properties (e.g., Analog Value, Binary Value) from each device using libraries like BACnet4J for efficient data retrieval.
Database Integration:
Design and implement an SQL database schema to store BACnet data. Create tables for devices, object types, object instances, and their properties. Utilize JDBC for database connectivity and implement CRUD operations to insert instance data into the database.
Error Handling and Logging:
Implement robust error handling mechanisms to manage communication failures, timeouts, and other network issues. Utilize Java logging frameworks to record significant events, errors, and debugging information for effective troubleshooting.
Security Considerations:
Adhere to network security policies and practices. Implement data encryption for secure transmission of sensitive information such as database credentials and BACnet communication.
Deliverables:
Provide a fully functional Java application with documented source code. Include setup instructions, usage guidelines, and a concise user manual for system administrators. Ensure the application meets performance benchmarks and scalability requirements for handling large-scale BACnet networks.
Related categories:
Business, Accounting, Human Resources & Legal
SQL
Software Architecture
MySQL
Database Programming