Electric Vehicle Battery Inspection Equipment Software

WKKim 08/23/2024
CSharp WPF Winform SQL

Overview

  • Developed and maintained automated inspection equipment for testing the functionality and quality of batteries in the final stage of the production line for a global battery company.
  • Developed a process that communicates with various measurement devices via CAN, Socket, Serial, and GPIB communication, and reports the inspection results to the higher-level system of the production plant.


Key Tasks

  • Development and maintenance of the inspection process.


Challenges & Solutions

  • Lack of knowledge in CAN communication and batteries.
  • Dedicated significant effort to gaining expertise in CAN communication and battery technology.
  • Studied late into the night for several months and sought help from senior colleagues when concepts were unclear.
  • Although initially overwhelmed by unfamiliar terms, constant exposure to relevant documents and information led to becoming the top expert at Phoenxion Controls.


Result

  • I acquired specialized knowledge and hands-on experience in CAN communication, becoming a recognized expert by both the client and automotive manufacturers.
  • To share the knowledge and experience I gained, I created manuals and held training sessions for team members and colleagues from other departments.


Challenges & Solutions

  • Management and debugging of a multithreaded environment.
  • Given the nature of automated equipment that necessitates the use of multiple threads, I considered the impact that each thread could have on others. For example, if one thread encountered a communication error and received data late or received erroneous data, it could cause critical errors in other threads.
  • Due to the high frequency of communication errors in the equipment, I carefully considered potential error scenarios for each thread and the possible impacts on other threads. By implementing Try-Catch blocks in critical sections, I prepared for severe errors and made sure to log thread-data-result information in various code sections. While it was impossible to resolve all errors at once, analyzing the additional debugging logs allowed for sequential resolution of the errors.


Challenges & Solutions

  • There was a challenge to reduce inspection time according to the client's request.
  • After analyzing the overall inspection process and conditions, I aggressively utilized asynchronous operations through code refactoring, removing unnecessary loops, delays, and implementing parallel processing.


Result

  • Although results varied across different production lines, software modifications resulted in approximately a 30% reduction in inspection time.