+1 (713) 688-4600 | Sales Toll-Free: (855) SELL BPM | 24/7 Service: +1 (832) 617-5702 info@bpmmicro.com
Select Page
US Patent: Object detection system (WhisperTeach™)

US Patent: Object detection system (WhisperTeach™)

US Patent Approved 2/23/2021

An object detection system utilizes a teach cycle performed with an ingenious object detector that utilizes the pick-up nozzle. The height of the object is stored as the taught height to be used subsequently in repetitive operations by the machine. This teaching method is particularly useful for very small objects and is available on all BPM Automated Programming Systems. BPM calls this patented process WhisperTeach™.

WhisperTeach™ offers faster setup times and improved yields; it eliminates common Z-height errors such as miss picks, miss place, and socket continuity flaws. Very small devices such as WLCSP, SOT, DFN have very low mass. When teaching using a vacuum, the suction causes the part to jump up to the nozzle, increasing the possibility of an inaccurate Z teach elevation. Because it uses the pick-up nozzle to detect the object, the system knows precisely the exact coordinates without additional offset calculations.

Modern pick and place machines are highly repeatable. The quality of the repetitive pick/place process is dependent on the accuracy of the teach process. Human teaching can introduce repetitive inaccuracies. WhisperTeach is accurate to within 15microns; approximately 3x more accurate than humans can detect unaided.

WhisperTeach™ Page WhisperTeach Demo Press Release

US Patent: Automated teaching of pick and place workflow locations on an automated programming system

US Patent: Automated teaching of pick and place workflow locations on an automated programming system

Patent Number: US 2020/0148484 A1

Inventors: William H. White, Alain A. Mangiat, Josue E. Salazar Vanoye, Colin D. Harper

Abstract

The operator may first place a blank device in a first socket in a first site. The APS may self-teach the position and orientation of that first socket by removing and replacing the device in the socket one or more times, and by detecting the position of the device in the socket or by monitoring a change in position of the device as it is placed into the socket. The APS then picks the device from the first socket (or from the input tray) and moves it in succession through the rest of the sockets to establish position and orientation of each socket. After all sockets are taught, the APS loads all sockets with blank devices, and programming begins. Alternatively, the programming job begins as each site is taught and before the remaining sites are taught so that production output can begin “immediately.”
 

Description

BACKGROUND

The present disclosure relates to teaching the pick and place locations for an automated programming system job on an Automated Programming System, hereafter “APS.” Prior to this invention, operators were required to manually assist with teaching each device pick and place location using semi-automated methods. Operators were required to manually load and unload devices for each pick or place point and then assist the APS in determining the X, Y, Z, and Theta target location for each workflow pick or place point before the full productivity of the job could begin.

SUMMARY

Disclosed herein are automated methods to setup or teach the pick and place locations for an automated programming system job on an Automated Programming System, hereafter “APS.” This reduces the setup time, reduces the level of operator skill required and improves setup accuracy, improves job yield, and reduces the frequency of human intervention required. Once the system is configured with the blank devices that will be programmed, input/output peripherals, socket adapters, and the feature is invoked, the system will teach the job and begin processing (programming devices) without operator intervention.

With fully automated self-teaching, operator involvement in the job set-up process is greatly reduced. The initial job set-up of input/out locations and peripherals is familiar Blank devices in media (tape, tray, tube) are loaded and Input/Output peripheral locations are taught. From that point, the process becomes radically different and more productive.

Using multiple pick and place cycles and analyzing results with a mathematical model, the APS will automatically determine, retain and adjust as necessary the target locations for pick and place locations within the programming job workflow. The initial, imprecise locations may be predetermined at the factory before shipment, or subsequently established at the customer location. Alternatively, a camera will assist to identify and establish each target pick or place point using machine vision algorithms.

Each pick and place point has a predetermined location, unique to each APS. The operator may place a blank device in socket A in the master programming site (typically Site 1). The z-height of the first device will be used for all subsequent devices at the respective socket locations. The APS then picks the device from socket A and moves it in succession to sockets B through “n” to establish the X, Y, Z, and Theta locations for each socket. After the master site has been taught, the APS subsequently moves the device to all of the other sites and sockets installed on the machine. After all programming sites and sockets are taught, the device is placed in socket A of the master site, the APS loads all sockets with blank devices, and programming begins.

Alternatively, the programming job begins as each site is taught and before the remaining sites are taught so that production output can begin “immediately.” Alternatively, all parts are placed into sites automatically using computed locations and/or machine vision or sensors. Alternatively, additional teach locations such as input peripherals, output peripherals, and marking peripherals are taught automatically. Alternatively, another method is used to teach the Z height.

The operator can walk away from the APS as soon as the auto-teach process begins. The machine then proceeds to teach and start running the job autonomously. In prior implementations, the operator had to continue to give the machine attention and was unable to walk away from the APS until the job started running.

In one embodiment, the operator only has to manually place at most one device into a socket. In prior implementations, the operator was required to place multiple devices into sockets.

In one embodiment, each blank device that is used for teaching is used to teach at most one socket. In prior implementations, a single device was moved from socket to socket to teach multiple sockets, which could cause some mechanical degradation of the device.

This automated system offers greater accuracy and repeatability than human operators. By automatically identifying, predicting, and teaching each pick and place location within the APS workflow, job setup time can be greatly reduced, leading to higher system productivity per job and per year. Further, teaching accuracy and repeatability improves system yield and quality. By automating the teaching process, the requirement for highly skilled operators is reduced, potentially lower the labor burden for the programming process.

Doing our Part to Defeat Our Common Enemy

Doing our Part to Defeat Our Common Enemy

BPM has instituted enhanced antiseptic cleaning

Our mission today is more important than ever. We are serving the global fight against our common enemy– SARS-Cov-2 – the virus that is causing COVID-19. This week, we’ve shipped a 3910 Automated Programming System to produce digital thermometers. And, we are doing a rush Device Support Request that is required to program MCUs that will control hospital beds. These beds are being produced immediately to set up new overflow hospitals. These two projects will save many thousands of lives. How often do you get to go to work and save thousands of lives? Pretty cool.

To help address the new leadership challenges we are facing, I am promoting Jon Bondurant to Chief Operating Officer. Jon’s mission in the COO role is to keep the trains running on time, so to speak. The entire leadership team, and thus all employees, are now reporting to Jon. This will allow me to work on strategy and technology development. Jon has demonstrated great skill as a manager, leader and solution innovator. He’s already stepping up his responsibilities in integrating and coordinating Device Support, IT, Manufacturing and Inside Sales to increase our output as a whole company. We are starting to see results already. Please congratulate Jon and give him an air handshake (from a safe distance).

COVID-19 Impacts BPM

All BPM Microsystems employees have been instructed to comply with the social distancing requirements, in addition to wearing N95 masks, in order to minimize the spread of COVID-19

We took the precaution of buying enough N95 masks (Filters out 95 percent of particles that are at least 0.3 microns in diameters.) for all employees when they were still available. To protect all of us, we are wearing these masks at work. The masks work not only because they filter the air you breathe, but they also keep you from touching your lips and nose, plus they diminish aerosols produced by coughing, sneezing, clearing your throat and speech. Do not lose your mask. They are exceptionally hard to get right now.

We are busy saving thousands of lives. And, we will get through this.

Kindest regards,

William White
Founder and CEO,
BPM Microsystems

A Letter to Our Friends and Customers

A Letter to Our Friends and Customers

A Letter to Our Friends and Customers

BPM Microsystems, Inc. is an essential supplier to businesses that are vital to both the United States and the world economy. Our device programming equipment is utilized by the medical field, aerospace, transportation, defense, and essential manufacturing. At this time, our facility will remain open and will be conducting business as “normally as possible” during the COVID-19 pandemic. In addition, the US Department of Homeland Security classifies BPM as a Critical Infrastructure Sector which gives us the ability to stay open in the event of a shelter-in-place order (as of 3/24/2020, Harris County is under a shelter-in-place order). Currently BPM is prioritizing all orders for medical, healthcare or otherwise COVID-19 related customers.

As the situation around COVID-19 continues to evolve, we at BPM are closely monitoring the latest reports from the Centers for Disease Control and Prevention (CDC), the World Health Organization (WHO), and the Texas Department of Health. Based on their guidance, BPM Microsystems is taking a number of precautionary measures for the health and safety of our customers, suppliers, and team members.

As at your companies, we’re focused on the health and safety of our employees, families, and communities. Most of our employees have been strongly encouraged to work from home. So far, this shift has been relatively smooth and we continue to deliver the highest levels of performance. Locally, the schools are closed, so there have been some of our folks who are working out the logistics at home.

Because we manufacture all of our equipment here in Houston, there is a group of folks that can’t work remotely. They run the PCB line, build/QC/test our machines (manual and automated systems) and finish most of our socket cards. We’re being mindful of their safety, we’re no longer accepting visitors to our Houston campus and we’ve canceled business travel (except in situations approved by CEO).

So far the efforts of our team over the last few weeks have been successful. No-one within the BPM team has been directly impacted by COVID-19 virus. The BPM team remains focused on your success. While all our businesses are in uncharted territory, BPM is known for innovation and problem-solving, and we feel ready to face this challenge.

We just launched our online store. Currently, we have spare parts kits, manual programmers, and standard sockets available. We will be expanding the store’s coverage over time. We have automated programming system available for rapid shipment. This is a good time to “stock up” on items you’ll need eventually. We currently have most items in stock or with a short lead time, with a few exceptions.  We all know how unpredictable this rapidly changing situation is. Consequently, many of our customers have made the decision to have spares on hand just in case. It’s easy for our Inside Sales team to check your sales history and see what items you have ordered in the past in case that helps.

In summary:

  • Product orders for healthcare, medical or otherwise to support COVID-19 recovery will be our top priority
  • BPM is sanitizing all work areas multiple times per day
  • BPM is working within CDC, State, and County guidelines, practicing social distancing, working from home wherever possible and sanitizing all work areas several times per day.
  • BPM has not had any report of COVID-19 amongst our employees
  • Due to uncertainty in supply chains BPM will not hold or delay orders that are ready to ship; order consolidation will be unavailable until further notice as we prioritize for our customers that have immediate needs.
  • We have created videos to enable user-install capabilities as required for APS purchases to be able to install systems in spite of travel bans
  • Whenever possible, BPM employees will be working from home

We have amazing teams across BPM that are here for you. And we have the privilege to work with some of the smartest, leading-edge companies on the planet! We’re committed to being your partner and persevering together in all the days and years ahead.

As we go forward, we’ll be sure to keep you updated, and know that we always value your questions, ideas, and feedback.

Kindest regards,

William White

William White

Founder & CEO, BPM Microsystems Inc

US Patent: In-line program system for assembly printed circuit board

US Patent: In-line program system for assembly printed circuit board

Abstract

An in-line programming (ILP) system and method for programming and testing programmable integrated circuit devices (PICs) and performing the assembly of printed circuit board assemblies (PCBAs). Printed circuit boards enter and leave the ILP system on a conveyor system. PICs are loaded into the ILP system, and the ILP system automatically programs and tests the PICs and places them onto the PCBs as the PCBs arrive on the conveyor. The programming and testing operations are performed by the same piece of equipment that performs the PCBA assembly operation.

Inventor: William H. White
Current Assignee: BPM Microsystems Inc
Worldwide applications: 2000 EP WO AU US JP 2001 US 2004 US 2006 US

Description

This application is a division of U.S. patent application Ser. No. 09/776,095, filed Feb. 1, 2001, now U.S. Pat. No. 6,687,986, which is a continuation of U.S. patent application Ser. No. 09/493,953, filed Jan. 28, 2000, now U.S. Pat. No. 6,230,067, entitled “In-Line Programming System and Method,” which is related to U.S. Provisional Patent Application Ser. No. 60/117,873 filed Jan. 29, 1999, entitled “N-LINE PROGRAMMING DEVICE WITH SELF TEACHING CAPACITY,” and the disclosures of each are hereby incorporated by reference.

Background

The present invention generally relates to concurrent automated programming of programmable electronic devices, and more particularly to programming and testing multiple device types and patterns and performing circuit board assembly simultaneously in a single in-line programming device.

In the semiconductor industry, a considerable number of electronic devices such as programmable integrated circuit (PIC) devices are provided by vendors in a programmable form with blank memories or unspecified connections between arrays of logic. Users can then custom configure or program the electronic devices to perform their intended function by programming them, transferring or “burning in” a sequence of operating codes into the memory, or by specifying a particular arrangement of gating logic connections.

Numerous manufacturers have developed automated machinery for handling and programming such devices. Such machinery moves blank devices from a source medium (e.g., trays, tubes, tape) to one or more programming sites, carry out the programming operation on each device, and moves programmed devices from the programming sites to an output medium (e.g., trays, tubes, tape). Typical users of automated programming equipment are highly sensitive to system throughput, which is typically measured incorrectly programmed devices per hour, and yield, which is typically defined as the percentage of devices that are correctly programmed.

Before any printed circuit board assembly (PCBA) containing a programmable integrated circuit (PIC) can be used, the PIC must be configured or programmed, so that it may perform its intended function. During programming, a pattern is loaded into the unprogrammed PIC. These patterns may be changed from time to time as the requirements of the function of the PCBA change over time. Also, in some applications, the pattern may be individualized for each PCBA that is assembled.

For years, PICs have been programmed before being assembled onto a printed circuit board using a methodology called off-line programming (OLP). This, however, created some problems in that OLP of the PICs has to be performed prior to assembly. Specialized equipment must also be obtained to perform OLP. Further, OLP has to be scheduled, which may delay the manufacture of PCBAs and create scheduling problems and bottlenecks in the process. Moreover, once the PICs is programmed, they must be stored until the assembly process begins. This storage and related delay typically create an inventory of programmed PICs. Not only does this inventory cost money, but in the event that a pattern change is required immediately, the inventory of programmed PICs may have to be destroyed, which adds to the cost and creates an additional delay before the assembly of more PCBAs can commence.

To solve these problems, a technique called in-circuit programming (ICP) was developed. ICP allows for a PIC to be programmed after it is placed on a printed circuit board, i.e., after the PCBA is assembled. Thus, the need for an inventory of programmed devices was eliminated, and individualized PICs no longer needed to be matched with the corresponding PCBA because all the PICs are identical (unprogrammed) at assembly time.

However, new problems arose. For example, because it is not feasible to program all PICs in the circuit, the designers of the PCBA must choose only devices that are ICP compatible. ICP compatible PICs cost more than similar non-ICP compatible PICs in many cases, so the cost of the PCBA may be higher when using ICP. Additionally, the PCBA design may be more complex to accommodate ICP, so the time to market may be negatively impacted. Furthermore, specialized equipment is required, and software must be written, perform the programming operation, which also may impact time to market for the PCBA. Since the programming operation may take a number of minutes to perform, a production line may be slowed down waiting for programming to complete. To address this throughput problem, some users may set up several ICP programming stations to service a single PCBA assembly line. However, this solution requires additional equipment, floor space in the factory, and capital outlay. Additionally, if the application for the PCBA requires that the PICs be programmed with individualized patterns, it may be necessary to match the individual PICs with their corresponding individual PCBAs. This additional complication adds additional cost and complexity to the assembly operation. Finally, in the event that the PIC fails to program, the entire PCBA will have to be reworked to replace the PIC.

Accordingly, what is needed in the art is a system and methodology for programming PICs and assembling PCBAs without the drawbacks associated with the off-line programming and in-circuit programming techniques.

Summary

Briefly, the invention provides in-line programming techniques for programming and testing any combination of devices and patterns. The techniques of the present invention are useful for programming a variety of types of programmable integrated circuit devices (PICs), including, for example, flash memories, EEPROMs, microcontrollers, PLDs, PALs, FPGAs, and the like. According to the invention, in-line programming (ILP) system programs and tests PICs and performs the assembly of printed circuit board assemblies (PCBAs). Printed circuit boards enter and leave the ILP system on a conveyor system. PICs are loaded into the ILP system, and the ILP system automatically programs and tests the PICs and places them onto the PCBs as the PCBs arrive on the conveyor.

The present invention addresses all of the above problems (e.g., costs, complications, and delays) by performing the programming and testing operations with the same piece of equipment that performs the assembly operation. Using the techniques of the present invention, PICs are programmed on demand so the need for an inventory of programmed PICs is eliminated, and changes to the program pattern may be incorporated immediately without waste. Any PICs that fail to program are rejected by the ILP system so that bad PICs are never placed onto a PCBA. Because the PCBA does not have to be designed to accommodate an in-circuit programming technique, the PCBA designer is unconstrained in the choice of PICs. The ILP system generally programs PICs faster than PICs can be programmed using the in-circuit programming methodology. The ILP system is also able to program a number of devices simultaneously, allowing a PCBA assembly line to produce PCBAs at a faster pace than that at which a single PIC can be programmed. Thus, an assembly line incorporating an ILP system may be smaller and produce PCBAs faster, with higher quality and less expense than an assembly line incorporating an in-circuit programming system. Further, the use of an ILP system in an assembly line allows for PCBAs to be produced less expensively than in an assembly line incorporating programmed PICs from an off-line programming system.

According to an aspect of the present invention, a method of automatically assembling a printed circuit board assembly (PCBA) in an assembly apparatus is provided. The method typically comprises the steps of a) receiving, in the assembly apparatus, a programmable electronic device to be programmed, and b) automatically programming the electronic device in the assembly apparatus. The method also typically includes the steps of c) receiving a printed circuit board in the assembly apparatus, and d) assembling the PCBA in the assembly apparatus by automatically placing the programmed electronic device on the printed circuit board so as to form the PCBA.

According to another aspect of the present invention, an assembly apparatus capable of automatically assembling a printed circuit board assembly (PCBA) is provided. The apparatus typically comprises a means for receiving, in the assembly apparatus, a programmable electronic device to be programmed, and a means for automatically programming the electronic device in the assembly apparatus. The apparatus also typically includes a means for receiving a printed circuit board in the assembly apparatus, and a means for automatically placing the programmed electronic device on the printed circuit board so as to form the PCBA.

Reference to the remaining portions of the specification, including the drawings and claims, will realize other features and advantages of the present invention. Further features and advantages of the present invention, as well as the structure and operation of various embodiments of the present invention, are described in detail below with respect to the accompanying drawings. In the drawings, similar reference numbers indicate identical or functionally similar elements.

While the invention has been described by way of example and in terms of the specific embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. On the contrary, it is intended to cover various modifications and similar arrangements as would be apparent to those skilled in the art. Therefore, the scope of the appended claims should be accorded the broadest interpretation so as to encompass all such modifications and similar arrangements.

 

Claims (9)

  1. A system for use within a surface mount production line having a conveyor for receiving a printed circuit board, and for moving the printed circuit board through the surface mount production line, the system comprising: a concurrent programming system containing first and second programming sites;

    a pick and place system for picking up first and second electronic devices from one or more tray shuttles, and for placing the first and second electronic devices within the first and second programming sites, respectively, the first and second electronic devices being programmable in a concurrent manner and independent of each other; and
    a central control unit for communicating with the conveyor, the concurrent programming system, and the pick and place system, the central control unit directing the conveyor to move the printed circuit board permitting the pick and place system to place the first and second electronic devices on the printed circuit board after the devices are programmed;

    wherein the conveyor system is controlled according to state variables associated with receiving a printed circuit board from an upstream device and providing an assembled printed circuit board assembly to a downstream device, and wherein the state variables include one or more of a first variable indicating that the upstream device is ready to deliver the printed circuit board, a second variable indicating that the downstream device is ready to receive the assembled printed circuit board assembly, a third variable indicating that the conveyor system is ready to receive the printed circuit board, and a fourth variable indicating that the conveyor system is ready to deliver the assembled printed circuit board assembly.

  2. The system of claim 1 wherein the concurrent programming system further comprises a controller for each of the first and second programming sites for independently programming each of the first and second programming sites.
  3. The system of claim 2 wherein the pick and place device further comprises a controller for servicing requests from the concurrent programming system and the conveyor.
  4. The system of claim 3 wherein the system making a request provides the location from which to pick up a device.
  5. The system of claim 1 further comprising tracks or rails enabling movement of the pick and place device within the system.
  6. The system of claim 1 further comprising one or more sensors for detecting when the conveyor delivers a printed circuit board to the system.
  7. The system of claim 1 further comprising four parallel asynchronous processes upon which operations of the system depend.
  8. The system of claim 1 wherein the pick and place device includes self-teaching capability for determining the precise locations at which to pick and place the first and second programmable devices.
  9. The system of claim 1 further comprising employing fiducial recognition techniques to determine the location at which the programmable device is to be placed.