text:
US 6009269 A Abstract A computer implemented method detects concurrency errors in programs. Machine executable images of multiple program threads are instrumented to locate and replace instructions which affect concurrency states of the threads. Concurrency state information is recorded in a memory while the multiple threads are executing. The recorded concurrency state information is analyzed, and inconsistent dynamic concurrency state transitions are reported as concurrency errors.
Claims(19) 1. A computer implemented method for detecting concurrency errors including deadlock conditions and data race conditions in programs, comprising:
instrumenting machine executable code of multiple threads of the programs to locate and replace instructions which affect concurrency states of the threads, including instructions which acquire and release locks; recording concurrency state information in a memory while the multiple threads are executing; analyzing the recorded concurrency state information; and reporting inconsistent dynamic concurrency state transitions as either deadlock conditions, data race conditions or other concurrency errors. 2. The method of claim 1 further comprising:
locating instructions which acquire and release locks; replacing the located instruction with instructions to intercept an execution flow; recording an order in which the multiple threads acquire and release locks while executing; and reporting cycles in the order in which the multiple threads acquire locks as deadlock conditions. 3. The method of claim 2 further comprising:
calling one or more monitoring procedures when intercepting the execution flow of any one of the multiple threads. 4. The method of claim 1 further comprising:
maintaining, for each thread, a current lock set associated with the thread; adding a lock to the lock set when the lock is acquired; deleting the lock from the lock set when the lock is released; and recording the order in which the locks are acquired in a lock log. 5. The method of claim 1 further comprising:
maintaining a read lock set for read accesses; and maintaining a write lock set for write accesses. 6. A computer implemented method for detecting concurrency errors in programs, comprising:
instrumenting machine executable code of multiple threads of the programs to locate and replace instructions which affect concurrency states of the threads; recording concurrency state information in a memory while the multiple threads are executing, including: maintaining a read lock set for read accesses; maintaining a write lock set for write accesses; adding a read lock to the read lock set for read accesses; and adding a write lock to the read lock set and the write lock set for write accesses; analyzing the recorded concurrency state information; and reporting inconsistent dynamic concurrency state transitions as concurrency errors. 7. A computer implemented method for detecting concurrency errors in programs, comprising:
instrumenting machine executable code of multiple threads of the programs to locate and replace instructions which affect concurrency states of the threads; recording concurrency state information in a memory while the multiple threads are executing, including: maintaining, for each thread, a current lock set associated with the thread; adding a lock to the lock set when a new lock is acquired by storing lock set pairs in the lock set, the pairs being every unique combination of a current member of the lock set and the new lock that is not a member of the lock set; deleting the lock from the lock set when the lock is released; and recording the order in which the locks are acquired in a lock log; analyzing the recorded concurrency state information; and reporting inconsistent dynamic concurrency state transitions as concurrency errors. 8. The method of claim 7 further comprising:
for each pair, storing the pair in a determined order so that either the current member of the lock set is recorded in a first position and the new lock in a second position, or the current member of the lock set is recorded in the second position and the new lock is stored in the first position. 9. The method of claim 8 wherein the pairs of the lock log are represented as an ordered lock graph further comprising:
a node for each lock; and a directed edge connecting a first lock to a second lock, the direction of the edge indicating the order in which the first and second lock were acquired. 10. The method of claim 9 further comprising:
performing a topological sort on the lock graph. 11. The method of claim 10;
wherein a first node and a second node are connected by a first edge and a second edge directed in opposite directions; and further comprising reporting the locks associated with the first and second node as a concurrency locking error. 12. A computer implemented method for detecting concurrency errors in programs, comprising:
instrumenting machine executable code of multiple threads of the programs to locate and replace instructions which affect concurrency states of the threads, including: (a) memory allocation and memory deallocation instructions so that for every address of a heap, a shadow address in a shadow heap is maintained and (b) instructions which access data at the addresses of the heap, replacing the access instructions with instructions to invoke monitoring procedures; recording concurrency state information in a memory while the multiple threads are executing, including recording lock set information at the corresponding shadow addresses using the monitoring procedures; analyzing the recorded concurrency state information; and reporting inconsistent dynamic concurrency state transitions as concurrency errors, including reporting accesses by the access instructions that are inconsistent with the recorded lock set information as data race conditions. 13. The method of claim 12 further comprising:
detecting an access to an allocated address of the heap. 14. The method of claim 13 further comprising:
intersecting current lock set information of a current accessing thread with stored lock set information of a previous thread accessing the address of the heap; and reporting a data race condition if the intersection of the sets is empty. 15. The method of claim 14 further comprising:
storing the intersection of the current and stored lock set information if the current and previous lock sets are different. 16. The method of claim 15 further comprising:
writing the intersection of the current and stored lock sets if the access is a write to the address. 17. The method of claim 12 further comprising:
recording the lock sets in entries of an array; and storing a pointer to a particular entry of the array at every shadow address associated with the lock set stored at the particular entry. 18. The method of claim 17 further comprising:
determining a hash value from a particular lock set; and storing the pointer in a hash table as determined by the hash value. 19. The method of claim 12 further comprising:
storing an identity of an accessing thread when the thread access is unshared. Description This invention relates generally to concurrently executing program threads in computer systems, and more particularly to detecting concurrency errors. In complex computer systems, multiple execution paths, or "threads" can be used to speed up processing. For example, interactions with users may be handled by foreground threads, while compute intensive operations such as database updates can be handled by background threads. Alternatively, parallel threads can be executed on multiple processors to improve performance. It is a problem to detect concurrency errors. One type of concurrency error is a "deadly embrace," or a dead-lock condition. A dead-lock condition exists, for example, where a thread A "owns" a shared resource X, and also needs to acquire a resource Y. The resource Y is owned by a second thread B, which needs to acquire resource X. The result is a resource conflict. Typically, a dead-lock situation causes the system to stop functioning in its intended manner. Another type of concurrency problem is a race condition. A race condition may exist if data states depend on the speed and order of thread execution. For example, a thread may need to read data at an address which can be written to by other threads. The actual data that are read will depend on the order of reading and writing by the individual threads. The non-determinism resulting from such race conditions can cause the program to produce erroneous results. Prior art techniques are known to statically check for concurrency errors. Prior art techniques typically prove the theorem that the program is correct, or "true." The problem is that an exact locking order, or data access sequence can vary dynamically while the threads are executing. Such variations are not detectable with a static checker. Therefore, it is desired to dynamically check for concurrency errors. Provided is a computer implemented method for detecting concurrency errors in programs. Machine executable code of multiple program threads is instrunented to locate and replace instructions which affect concurrency states of the threads. The replacement instructions will call procedures of a monitor. The monitor procedures record concurrency state information in a memory while the multiple threads are executing. The recorded concurrency state information can be analyzed, and inconsistent concurrency state transitions can be reported as concurrency errors. In one aspect of the invention, the instructions which are replaced are instructions which acquire and release locks. In this case, the recorded state information is the locking order of locks. Cycles in the locking order are indicative of dead-lock conditions. In another aspect of the invention involving heaps, for every address of a heap, a shadow address is maintained in a shadow heap. This can be done by locating and replacing memory allocation and deallocation instructions. In this case, the recorded state information is related to the order data are accessed. Inconsistent access orders are reported as data race conditions. FIG. 1 is a block diagram of a process for dynamically detecting synchronization errors in programs; FIG. 2 is a block diagram of multiple threads and lock sets; FIG. 3 is a block diagram of a lock log; FIG. 4 is a block diagram of a lock ordering graph; FIG. 5 is a block diagram of a heap and shadow heap; FIG. 6 is a block diagram of a lock set; FIG. 7 is a flow diagram of a process which checks for concurrent access errors; FIG. 8 is a modified flow diagram which checks for concurrent shared access errors; and FIG. 9 is a block diagram of a lock set array and hash table. FIG. 1 shows a process 100 which can be used for dynamically detecting concurrency errors of multiple program threads. A programmer generates source programs 110 using conventional programming techniques. The source programs 110, once processed, are intended to execute concurrently in a computer system (CPU) 190. The system 190 includes a memory and a processor, or multiple memories and processors used in conjunction. The programs 110 can be compiled by a compiler 111 into object modules (thread obj) 120. A monitor program 130, which is to report on the behavior of the source programs 110 while they are executing, is also generated. The exact details of how the monitor program 130 can report on execution of the source programs 110 will be described in greater detail below. The monitor program 130 is compiled by compiler 131 into object module (mon obj) 121. A linker 140 links the object modules 120-121 into a machine executable image (.exe) 150. The executable image 150 is sometimes known as the "binary" program or "text." The integrated portion of the image 150 which is to report on the execution of the threads is called the "monitor" 155. It should be noted that the linker 140 can have access to symbol tables 141 generated by the compilers 111 and 131. Using the symbol tables 141, the linker 140 can resolve, for example, data references and procedure calls that are common among the object modules. It should also be noted that the compiling and linking of the programs can also produce a data section (data) 151 storing constant values which are passed along with the text portion 150 of the program For the purpose of one embodiment, the program text or executable image 150 includes only machine executable instructions, e.g., operands and operators. All data are stored separately in the data section 151. The executable image 150 is modified or "patched" by an instrumenter 160. Instrumentation is a process which locates and replaces selected instructions of the image 150. An example instrumenter which can be used is described in U.S. Pat. No. 5,539,907, System for Monitoring Computer System Performance, issued to Srivastava et al. on Jul. 23, 1996. Each selected instruction is overwritten with one or more replacement instructions, for example, the replacement instruction can be a jump-to-subroutine instruction (jsr) 171. The jsr instruction can "call" 172 one of the procedures 173 of the monitor 155. The procedures 173 are designed to examine, record, and analyze concurrency states of the system at the time the selected instruction is about to execute. In order to speed-up processing in an alternative embodiment, the calls 172 can be implemented as in-line instructions. That is, the in-line instructions implement the procedures 173. Therefore, in the description below, the calls 172 can refer either to a subroutine call or the equivalent in-line instruction of the routine called. After machine executable code 150 has been instrumented it is stored back in the memory of the system. For this reason, instrumentation is sometimes known as a "binary rewrite." The modified machine code 150 can be loaded into the processor 190 by a loader 180. While running the program, the inserted "calls" 172 intercept thread execution. The procedures 173 record selected concurrency state information 195 about the system. The recorded state information can be analyzed to report 196 the behavior of the program with respect to the states. For example, locking in an inconsistent order, or storing data in an inconsistent order, may reflect concurrency errors. After the monitor procedures 173 complete, the "replaced" instruction can be executed, and normal execution of the program thread can resume via return-from-subroutine instructions 174. Concurrency errors can be reported while the programs are executing, or after the monitoring completes. The specific instructions 171 replaced during instrumentation depend on which thread concurrency states are to be analyzed and reported. In order to detect deadlock conditions, all machine instructions which call procedures which are used to acquire and release locks are instrumented. In order to detect race conditions, all machine instructions which call procedures which are used to acquire and release locks are instrumented, and, in addition, data access instructions, e.g., loads and stores, as well as memory allocation and deallocation calls are also instrumented. Now with reference to FIG. 2, the detection of dead-lock concurrency errors is described. In the system 190, a plurality of threads (A, B, C) 211-213 are concurrently executing instructions. The threads 211-213 have access to locks (a, b, . . . , e, f) 220 for synchronizing their activities, for example, accesses to shared resources. In order to synchronize on a predetermined activity, a thread makes a call 221 to acquire an associated lock. By holding the lock, the thread can exclude other threads from using the same shared resource. Once the activity has completed, a call 222 releases the lock. It may be possible that a single call may acquire or release multiple locks. The specific locks which are manipulated can be passed as arguments of the calls 221-222. If a desired lock is not available, e.g., it is held by some other thread, then the acquiring thread can be held in a wait state until the lock becomes available. The present method for detecting deadlock conditions assumes that the order in which locks are to be correctly acquired is prescribed in advance. This is a common discipline for managing the acquisition of locks in multi-process and multithreaded programs. As a counter example, thread A holds lock a and thread B holds lock b. In order to proceed, thread A also needs lock b, and thread B needs lock a. In this case of conflicting acquisition orders, neither thread can proceed. This is a classical case of dead-lock. In a complex execution environment, thousands of locks may be used to synchronize processing activities. Consistent locking behavior can be monitored, to some extent, statically. If the order in which locks are acquired is dependent on a particular execution, then it becomes extremely difficult to detect dead-lock situations, because the number of permutations in different locking orders becomes quite large. Therefore, the monitor 155 of FIG. 1 maintains data structures which store concurrency state information related to the order in which locks are acquired and released while the threads are executing. This state information can be analyzed to detect errors in locking order before the programs are made available for general use. If the instrumenter 160 locates and patches all the calls 171 to lock management procedures, then every time a lock is acquired or released, the execution flow of the threads can be intercepted by one of the procedures 173 of FIG. 1. More specifically, the monitor maintains for each thread a lock set 230. Whenever a lock is acquired, the lock becomes a member of the lock set 230 associated with the thread. When the lock is released, the lock is deleted from the set. For example, if thread A acquires locks a, b, c, and later releases lock b, then its lock set has members {a, c}. In addition, the monitor records all lock acquisitions in a lock log 300. As shown in FIG. 3, the acquired locks are logged as ordered pairs 301-312 as follows. For example, thread A acquires, in order, the locks a, b, and c. When lock b is acquired, the pair (a, b) 301 is recorded in the log. This indicates that lock b was acquired after lock a. Subsequently, when thread acquires lock c, then the pairs (a, c), and (b, c) are also recorded because locks a and b are both still members of thread A's lock set when lock c was acquired. In the case where the locking order is not changed during the monitoring of the program's execution, an optimization that exploits the ordering relation is possible. In this optimization, the set of locks held by a thread is maintained in chronological order from least recently acquired to most recently acquired. With this optimization, when a new lock is acquired by a thread, only the pair consisting of the previous most recently acquired lock and the lock being acquired is stored in the log. Therefore in the general case, whenever a thread acquires a lock, a pair is stored in the lock log 300 for every combination of a current member of the thread's lock set with the newly acquired lock. In other words, the pairs express the order of locking. If the lock log 300 already records an identical pair, the new pair is, not recorded. That is the log stores unique pairs only. Two pairs expressing locks acquired in a different order, e.g., (a, b) and (b, a) are not identical. The example log 300 of FIG. 3 shows thread B acquiring locks a, c, and d. At a later time thread A has released locks a and c, but has acquired locks d, e, and f. Then, thread B releases locks a, c, and d, but acquires locks f and b. The last lock acquisition is reflected in the log 300 as the pair (f, b) 312. FIG. 4 shows a graphical representation 400 of the lock log 300 of FIG. 3. Here, each lock is a node 401-403 in the lock ordering graph 400, and the directed edges 404-405 between pairs of nodes indicate the relative order in which the locks were acquired. It should now be apparent that the example locking order has resulted in nodes 402 and 403 having two interconnecting edges 404 and 405 in opposite directions. This is called a cycle. A cycle indicates that threads are acquiring locks in a conflicting order. Cycles in directed graphs can be detected by performing a topological sort on the pairs of the lock log 300. Topological sorts for other applications are generally described by D. Knuth, The Art of Programming, Volume I, Fundamental Algorithms, Addison-Wesley, 1968, pp. 258-268. Cycles are evidence of a potential dead-lock situation, and are therefore reported. It should be noted that the absence of a cycle in the lock ordering graph 400 does not imply that the program is absolutely dead-lock free, because other resource synchronization mechanisms can be involved in a dead-lock condition. In addition, there may be another set of input data which could cause the threads to acquire locks in a different order. In general, dynamically checking for concurrency errors can only verify that the threads lock properly for a particular execution of the programs. Another type of concurrency error is a data race condition. Race conditions occur when multiple threads access data at the identical address. For example, two threads both read data with intent to modify. In this case, the final data state depends on which thread completes first. In most operating systems, the scheduler has the freedom to run threads (at the same priority level) in any order, subject only to synchronization constraints. In a multi-processor system, execution can progress at different speeds depending on, for example, cache misses and other load conditions of the different processors. Therefore, if the time to complete can dynamically vary, so can the final data state. If each shared datum is protected with a lock, then data races can be avoided. Among multiple threads of large programs, it is difficult to statically ascertain which locks are associated with which data. FIG. 5 shows a data structure which can be used to detect data race conditions at the address level. A random access memory (RAM) 500 stores data at addresses of a "heap" 510. The heap 510 can concurrently be accessed by multiple program threads to share data. The data are stored at unique addresses, such as address 511. The addresses can be virtual memory addresses. This means that the total amount of dynamic physical memory (DRAM) is less than what can be addressed. In one possible virtual memory system, the address 511 could be expressed as a 32 bit value, allowing for the addressing of four Gigabytes of memory, only a small fraction of which might be implemented as physical memory. It should be understood that this is just one of many variations, for example, 64 bit words may be used just as well. For every address of the heap 510, a shadow heap 520 is also maintained. This means there is a one-to-one correspondence 501 between address 511 and 521. The shadow heap 520 will be used to store access concurrency state information. This means, whenever data at an address of the heap is accessed, current data access concurrency information is updated at the corresponding address of the shadow heap 520 if the algorithm so requires. The machine executable code 150 of FIG. 1 is modified as follows. All instructions 171 which access addresses of the heap (loads and stores), are replaced by calls 172 to the procedures 173 of the monitor 155. In addition, any calls by the code 150 to procedures which allocate and deallocate addresses of the heap 510 are also replaced with calls to monitor procedures. This later activity is done to ensure that the shadow heap 520 accurately reflects the addresses of the heap 510. FIG. 6 shows a word 600 at one of the addresses of the shadow heap 520. The word 600 has two fields, an access state field 610, and a lock set state field 620. As will be described below, in certain implementations the state field 620 can include two sub-fields. The access state field 610 can have one to three bits, e.g., access (A), shared, (S), and read/write (R/W) 611, 612, and 613. The address of the word 600 can be allocated to the shadow heap 520 as the corresponding address of the heap 510 is allocated. The word 600 can be initialized to have all bits set to zero. This indicates that the corresponding word at the heap address has never been accessed. Upon deallocation of a word in the heap, the corresponding word in the shadow heap is deallocated and any information it previously stored is lost. The deallocation may happen through an explicit call in the program to a library deallocation routine, or it may be through an automatic storage reclamation routine, such as a garbage collector, that has been annotated as described below. FIG. 7 shows a process 700 which can be used to maintain shadow heap 520. When any thread 211 of FIG. 2 is about to access data at an address of the heap 510, step 710, determine in step 720 if the corresponding address of the shadow heap 520 has been allocated. The absence of a shadow heap address detects an erroneous attempt to access an unallocated portion of the heap 510, step 725. If the value stored at a valid shadow heap address is zero (no previous accesses, step 730), then in step 732 set the access bit 711 of the state field 610 to a logical one, and write the current lock set associated with the accessing thread to the lock set field 620, step 735. Resume executing the thread after executing the replaced instruction. The exact details on how the lock set is stored at addresses of the shadow heap 520 will be described below. In actual fact as described below, the lock set state field 620 stores a pointer to an array element where the lock set is stored. Therefore, "writing" the lock set implies storing a pointer in word 600. Subsequently, another access to the same address will detect that the access bit 711 is not zero. In this case, take the intersection of the lock set of the thread accessing the address and the lock set stored at the shadow address, and store the remaining lock set in the lock set field 620, step 740. If the lock set field 620 is empty after taking the intersection, step 750, e.g., there are no common outstanding locks, a possible data race condition exists for the address, step 755, otherwise return. Deallocating the address, will cause the word 600 to be reset to its initial all zero value. This technique may erroneously signal data race conditions. These are known as a false alarms. False alarms may happen if only a single thread is accessing the data. FIG. 8 shows how the process 700 can be modified to do a more discriminating concurrency detection. In this variation, if the access bit 711 is non-zero, an additional check is done (step 760) on the shared bit 712. While the shared bit 712 is zero, a thread identifier is stored in a field of the shadow address. On subsequent accesses, if the shared bit 712 is still zero, the identifier of the accessing thread is compared with the identifier stored at the shadow address. If the identifiers are different, then shared bit 712 is set to a logical one to indicate that at least two threads have accessed the address. A lock set is not stored at the shadow address until the shared bit 712 is set to a one, because no error checking needs to be done until the address has been shared by more than one thread. Because the thread identifier and the lock set need never be stored at the shadow address at the same time, the same field 620 of the shadow address can be used to store these values at different times. As long as the shared bit 712 remains a zero, the process simply writes the identity of the thread in the lock set field 620 of the shadow address, step 735. In this case, the lock sets are no longer intersected as long as the same thread continues to access data at the address. If the shared bit 711 is set to a one, then intersect and check for an empty set 740 and 750. However, this technique may be too coarse for some applications and may still cause false alarms. For example, in many data processing systems, many addresses are initialized once by a thread but are never written again, even though many threads may subsequently read these addresses. In this case, locks are not needed to protect the address once it has been written for the last time. Therefore, the concurrency checking technique described above may report many false alarms. The R/W bit 613 stored at the shadow address is used to overcome this problem The bit is ignored until the shared bit 612 is set. Once the shared bit 612 is set, the R/W bit 613 is set to a one on any following write access. If the shared bit 612 is set due to a write access, then the R/W bit 613 is also immediately set. Updates to the lock set 620 stored at the shadow address 600 proceed normally, irrespective of the state of the R/W bit 613. The effect of the R/W bit 613 is to suppress error messages when the bit is zero, because no access errors can occur unless at least two threads have accessed data at an address (the shared bit 612 is set to a one), and the address is being written by at least one of the threads after a sharing of the address (the R/W bit is set to one). One possible programming convention that is sometimes used protects data stored at a single address with more than one lock. In this convention, threads must acquire all the locks before the data can be modified, but a thread may need only one lock to read the data. The present technique can be modified to accommodate this programming convention. On a write access, the process can update the shadow address as described above. On a read access, the lock set intersection and test for an empty set is also done as above. However in this case, the lock set stored at the shadow address is not updated with the intersected set. The concurrency error detection scheme can be further improved to handle single-writer/multiple reader locks where the locks can be acquired in one of two modes; read-mode and write-mode. If a thread acquires a lock in write-mode, then the thread is guaranteed that no other thread holds the lock in any case. If a thread acquires the lock in read-mode, then the only guarantee is that no other thread holds a lock in write-mode. Single-writer/multiple reader locks allow multiple threads to concurrently read data stored at an address. This is similar to the concept of protecting an address with multiple locks. However, the implementation considerations are different, as is the manner in which locks are accommodated in the present concurrency error detection scheme. So far in this description, only a single lock set has been associated with a thread. Locks are added and removed from the set as locks are acquired and released by the thread. In order to accommodate single-writer/multiple reader locks, two lock sets are associated with each thread: a read-set, and a write-set. When a write lock is acquired, it is added to both sets, and the lock is removed from the two sets when the lock is released. For a read lock, the lock is only added to, and removed from the read-set. The processing of the information at the shadow address is similar to what is described above, except that only the read-set is used during read accesses, and the write set is used during write accesses. The preferred way of organizing lock sets and pointers to lock sets are now described in greater detail. FIG. 9 shows an array 900 including a plurality of lock sets 901-907. Each entry in the array 900 is a unique set of locks. In actual practice, the number of different lock sets will be small, and therefore, the table 900 can in most cases be stored in the main memory. The entries of the table 900 are permanent during a particular monitoring session. This means, that the entries are not modified or deleted from the table 900. Associated with each lock set is a small integer value which is used as an identification. The identification is an index into the array 900. Entries in the table 900 are created sequentially starting with entry "zero," then entry one, and so forth. The index into the array is the identification of the entry. It is these identifiers which are actually stored in the lock set state fields 620 of FIG. 6. To keep the table small, an entry is never added to the array 900 more than once. Therefore, an auxiliary hash table 1100 is maintained. Every time a lock set entry is generated in the array 900, a hash table entry 1110 is also generated. The hash key value is derived by applying a hashing function directly on the lock set. The lock set identification (array index) is stored in the corresponding hash table value. Thus, during operation, the lock set can be uniquely identified. As with the technique for detecting deadlocks, the results generated by the use of these methods for detecting race conditions are dependent on the particular program execution that is monitored. Different input data or slightly different sequences of events may lead to different execution paths through the program. Because of this, not all potential race conditions may be detected when this method is used. There may also be potential race conditions reported when, in fact, synchronization has occurred through some mechanism other than locking, and the race condition could not occur in practice. As a further improvement, the programs to be checked can be annotated. Program annotations are "signals" put in the program to indicate the programmer's intention. Annotations have no effect on the execution of a program. As an advantage, the annotation can be checked during execution to refine the concurrency error detection process. An example source annotation can be in the form of a call to a "null" procedure with predetermined arguments. The null procedure, as the name implies, does nothing but return to the regular execution flow. Calls to null procedures can be identified by the instrumenter 160. These calls can be replaced by calls to procedures 173 of the monitor 155 which interpret the arguments. Alternatively, the annotations can be in the form of calls to procedures of the monitor. These procedures can be identified in the symbol tables 141. For example, an annotation may indicate that the next allocation is for memory addresses which can only be accessed in shared mode by read instructions. Another annotation, can indicate that the allocated memory is private to the thread. It should be apparent that such annotations can decrease the number of false alarms. Another example of an annotation that can be added in the case of deadlock detection is an annotation that indicates that the locking order used in the program is being changed. For example, such an annotation might indicate that a position of a lock in the locking order has changed, and all pairs that included it were to be removed from the log. In the case of dynamic race detection, if a program provides automatic storage reclamation (garbage collection), an annotation in the form of a call to the monitor can be included in the source of the program, to indicate that a range of storage is being reclaimed and should be deallocated from the shadow heap. The foregoing description has been directed to specific embodiments of this invention. It will be apparent, however, that variations and modifications may be made to the described embodiments, with the attainment of all or some of the advantages. Therefore, it is the object of the appended claims to cover all such variations and modifications as come within the spirit and scope of the invention. Patent Citations
Non-Patent Citations
Referenced by
Legal Events
Rotate |


text:
US 20040147177 A1 Abstract A mating connector comprises both a receptacle connector and a plug connector. The receptacle connector has an insulative housing and at least one conductive receptacle contact with a pair of spaced walls forming a plug contact receiving space. The plug connector has an insulative housing and at least one conductive contact having a pair of spaced walls that converge to form a projection engageable in the plug receiving space of the receptacle contact. In each case, the spaced walls are joined by a bridging structure that unites the walls. The plug and receptacle contacts are retained in a housing by engagement of opposed lateral edge portions of the contacts with the housings in a manner to enhance heat dissipation by convection by maintaining substantial portions of the contacts spaced from the housing walls and from each other. The bridging structure may include a retention element for engaging respective connector housings to retain the contact in the housing. The open structure of both the receptacle and plug contacts enhances heat dissipation and allows flexibility in achieving desired contact normal forces. The contact construction is especially useful for electronic power connectors. The electronic power connectors can also be modified to accommodate connections for an external AC power supply. The connector housing incorporating the AC power connection capability can accommodate different forms of AC power supply termination contacts, such as spade-type contacts having a spring-like plug for receiving discrete quick connect socket terminals or contacts for connection to bus bars.
Claims(41) 1. A matable electrical connector, comprising:
a housing; a receptacle connector formed in said housing and comprising at least one conductive receptacle contact disposed in said housing, said at least one receptacle contact comprising a pair of spaced receptacle contact walls forming therebetween a plug contact receiving space; and a plug connector integrally formed with said receptacle connector in said housing, said plug connector comprising at least one conductive plug contact, said at least one conductive plug contact comprising a pair of spaced plug contact walls, said spaced plug contact walls each having a plate extending there from, said plates forming a projecting section for insertion into a plug contact receiving space, said plates being opposed and spaced from each other by a distance less than a distance between said plug contact walls, said projecting section forming a medial air gap. 2. The connector of
3. The connector of
4. The connector of
5. The connector of claims 4, wherein the receptacle contact walls each have a panel section and the terminals extend from the panel section.
6. The connector of
7. The connector of
8. The connector of
9. The connector of
10. The connector of clam 9, wherein the two receptacle walls and bridging element are formed from a single piece of stock.
11. The connector of
12. The connector of
13. The connector of
14. The connector of
15. The connector of
16. The connector of
17. The connector of
18. The connector of
19. The connector of
20. The connector of
21. The connector of
22. A matable connector comprising:
an insulative housing; a plug connector disposed in said insulative housing, said plug connector having a mating interface for mating with a receptacle connector and a mounting interface, a plug contact cavity in the plug connector extending from the mating interface to the mounting interface, the contact cavity having a pair of opposing side walls; a plug contact received in the plug contact cavity, the plug contact comprising a mounting portion, the mounting portion having a pair of spaced walls, each wall being positioned adjacent one of the side walls of the plug contact cavity, and a mating portion, the mating portion comprising an opposed pair of beams, the proximal portion of each beam extending from one of the plug contact walls toward the mating interface and having opposed, spaced interior surfaces in facing relationship and exterior facing surfaces, said exterior surfaces comprising contact surfaces; a receptacle connector disposed in said housing, said receptacle connector having a mating interface for mating with a plug connector and a mounting interface; a receptacle contact cavity in the receptacle connector extending from the receptacle mating interface to the receptacle mounting interface, the cavity having a pair of opposing side walls; and a receptacle contact received in the receptacle contact cavity, the receptacle contact comprising a pair of opposed walls, each of the walls mounted adjacent one of the side walls of the receptacle cavity, said receptacle contact walls being spaced a distance to compressively engage contact surfaces of a plug contact between the walls of the receptacle contact. 23. The connector of
24. The connector of
25. The connector of
26. The connector of
27. The connector of
28. The connector of
29. The connector of
30. The connector of
31. The connector of
32. The connector of
33. The connector of
33. The connector of
34. The connector of
35. The connector of
36. The connector of
37. The connector of
38. The connector of
39. The connector of
40. The connector of
Description [0001] This application is related by subject matter to U.S. patent application Ser. No. 09/944,266, filed Aug. 31, 2001, which is a continuation in part of U.S. patent application Ser. No. 09/160,900, filed Sep. 25, 1998, which claims benefit of U.S. Provisional Patent Application No. 60/082,091 filed Apr. 17, 1998. [0002] 1. Field of the Invention [0003] The present invention relates to electrical connectors and more particularly to electronic power connectors especially, useful in circuit board or backplane interconnection systems. [0004] 2. Brief Description of Prior Developments [0005] Designers of electronic circuits generally are concerned with two basic circuit portions, the logic or signal portion and the power portion. In designing logic circuits, the designer usually does not have to take into account any changes in electrical properties, such as resistance of circuit components, that are brought about by changes in conditions, such as temperature, because current flows in logic circuits are usually relatively low. However, power circuits can undergo changes in electrical properties because of the relatively high current flows, for example, on the order of 30 amps or more in certain electronic equipment. Consequently, connectors designed for use in power circuits must be capable of dissipating heat (generated primarily as a result of the Joule effect) so that changes in circuit characteristics as a result of changing current flow are minimized. Conventional plug contacts in circuit board electrical power connectors are generally of rectangular (blade-like) or circular (pin-like) cross-section. These are so-called �singular-mass� designs. In these conventional singular-mass blade and pin configurations, the opposing receptacle contacts comprise a pair of inwardly urged cantilever beams and the mating blade or pin is located between the pair of beams. Such arrangements are difficult to reduce in size without adversely effecting heat dissipation capabilities. They also provide only minimal flexibility to change contact normal forces by adjustment of contact geometry. [0006] Thus, there is a need for a small contact which efficiently dissipates heat and which has readily modifiable contact normal forces. [0007] In U.S. patent application Ser. No. 09/160,900, electronic power connectors are described for use in power circuits where the connectors provide terminations associated with power that is internal to the system. In some power circuit configurations an external power supply, usually an external AC power cable, may also be incorporated into the overall environment. The external AC power supply connections are known to be stand-alone cable connections that are terminated directly onto the board. This poses known drawbacks due to the fact that in those circumstances where the AC power supply is on the order of 30 amps or more an undesirable level of heat buildup on the traces of the power board can occur. Also, where stand-alone cable connections are used to adapt AC power by direct wire termination onto the power distribution boards there is an additional level of complexity in the connective configurations on the board. [0008] Thus, there is a need for an electronic power connector that incorporates into a single housing those contacts for establishing connections for the internal system power and contacts for mating with an external power cable. [0009] Applicant has also noted that there is a need for a connector that has the versatility to operate as a plug (i.e. male) connector, receptacle (i.e. female) connector, or both simultaneously. Such a connector would eliminate concerns regarding whether a cable or electronic device has the appropriate terminator type for connection. Indeed, a connector that incorporates both a plug connector and connector receptacle would be operable to mate with any device or cable that has a similar connector thereon. [0010] The present invention relates to electrical connectors that comprise a receptacle having an insulative housing and at least one conductive receptacle contact comprising a pair of spaced walls forming a plug contact receiving space. A mating plug comprises an insulative housing and at least one conductive contact having a pair of spaced walls which form a projection engageable in the plug receiving space of the receptacle contact. The contacts employ a �dual mass� principle that provides a greater surface area available for heat dissipation, principally by convection, as compared with �single-mass� contacts. This arrangement provides an airflow path through spaced portions of the contacts of the plug and receptacle connectors when mated. [0011] Also, an electrical power connector is described herein that incorporates contacts for establishing AC power cable connections into a single housing along with the power connector contacts that are otherwise described herein. Incorporation of AC power cable connections directly into the insulative housing that forms the internal power connector eliminates the need for any transitional type, stand-alone AC power supply connection system such as that described above. The connector housing incorporating the AC power connection capability can accommodate different forms of AC power supply termination contacts, such as spade-type contacts for receiving discrete fast-on terminals or contacts described herein for connection to bus bars. [0012] Also, there is described herein a connector that comprises both plug and receptacle contacts. In an illustrative embodiment, the connector comprises an insulative housing having a receptacle connector and a plug connector disposed therein. The receptacle connector comprises at least one conductive receptacle contact comprising a pair of spaced walls forming a plug contact receiving space. The plug connector comprises at least one conductive contact having a pair of spaced walls that form a projection engageable in a plug receiving space of a receptacle contact. [0013] The present invention is further described with reference to the accompanying drawings in which: [0014]FIG. 1 is a perspective view of a plug contact; [0015]FIG. 2 is a side elevational view of the plug contact shown in FIG. 1; [0016]FIG. 3 is a perspective view of a receptacle contact; [0017]FIG. 4 is a side elevational view of the receptacle contact shown in FIG. 3; [0018]FIG. 5 is a front elevational view of a plug connector; [0019]FIG. 6 is a top plan view of the plug connector shown in FIG. 5; [0020]FIG. 7 is an end view of the plug connector shown in FIG. 5; [0021]FIG. 8 is a top front perspective view of the plug connector shown in FIG. 5; [0022]FIG. 9 is a top rear perspective view of the plug connector shown in FIG. 5; [0023]FIG. 10 is a front elevational view of a receptacle connector; [0024]FIG. 11 is a top plan view of the receptacle connector shown in FIG. 10; [0025]FIG. 12 is an end view of the receptacle connector shown in FIG. 10; [0026]FIG. 13 is a top front respective view of the receptacle connector shown in FIG. 10; [0027]FIG. 14 is a top rear respective view other receptacle connector shown in FIG. 1. [0028]FIG. 15 is a front perspective view of a second embodiment of plug connector; [0029]FIG. 16 is a rear perspective view of the plug connector of FIG. 15; [0030]FIG. 17 is an isometric view of a plug contact used in the connector of FIG. 15, with the contact still attached to a portion of the strip material from which its formed; [0031]FIG. 18 is a side cross-sectional view of the plug connector of FIG. 15; [0032]FIG. 19 is a front perspective view of a receptacle connector matable with the plug connector of FIG. 15; [0033]FIG. 20 is a rear perspective view of the receptacle connector shown in FIG. 19; [0034]FIG. 21 is a isometric view of a receptacle contact used in the connector shown in FIG. 19, with the contact still attached to a portion of the metal strip from which it was formed; [0035]FIG. 22 is a side cross-sectional view of the receptacle connector shown in FIG. 19; [0036]FIG. 22a is a partial cross-sectional view taken along line AA of FIG. 22; [0037]FIG. 22b is a partial cross-sectional view taken along line BB of FIG. 22; [0038]FIG. 23 is a front perspective view of a third embodiment of plug connector; [0039]FIG. 23a is a cross-sectional view of an alternative arrangement for securing a contact in a housing; [0040]FIG. 24 is a front perspective view of a receptacle connector adapted to mate with the plug connector with FIG. 23; [0041]FIG. 25 is a front elevational view of another embodiment of receptacle connector; [0042]FIG. 26 is a bottom respective view of the connector shown in FIG. 25; [0043]FIG. 27 is an isometric view of a receptacle contact used in the connectors illustrated in the FIGS. 25 and 26; [0044]FIG. 28 is a cross-sectional view of a connector as shown in FIG. 25; [0045]FIG. 29 is a cross-sectional view of an embodiment employing stacked contacts in the plug and receptacle connectors; [0046]FIG. 30 is a top front perspective view of a receptacle connector incorporating AC power cable connections, including a spade terminal shroud; [0047]FIG. 31 is a top plan view of the receptacle connector shown in FIG. 30; [0048]FIG. 32 is a side cross-sectional view taken along line AA of FIG. 31; [0049]FIG. 33 is a perspective view of a spade terminal; [0050]FIG. 34 is an enlarged view of the cable plug-up portion of the spade terminal shown in FIG. 33; [0051]FIG. 35 is a side plan view of a shroud for the AC power supply spade terminals; [0052]FIG. 36 is a bottom plan view of the shroud shown in FIG. 35; [0053]FIG. 37 is a bottom cross-sectional view taken along line AA of FIG. 35; [0054]FIG. 38 is a top plan view of another receptacle connector incorporating AC power cable connections; [0055]FIG. 39 is a side plan view of the connector shown in FIG. 38; [0056]FIG. 40 is a top front perspective view of the connector shown in FIG. 38; [0057]FIG. 41 is an exploded perspective view of the connector shown in FIG. 38, including a mounting bracket; [0058]FIG. 42 is a perspective view of a connector incorporating contacts according to a preferred embodiment of the invention for connection to a bus bar; [0059]FIG. 43 is a perspective view of a connector comprising both a plug connector and a receptacle connector; and [0060]FIG. 44 is an exploded perspective view of a connector comprising both a plug connector and a receptacle connector aligned for and nearly mated with a second connector comprising both a plug connector and a receptacle connector. [0061] Referring to FIGS. 1 and 2, a plug contact 10 for use in a plug connector is shown. This plug contact has two opposed major side walls 12 and 14. A front projection, identified generally by numeral 16, has an upper section 18 and a lower section 20. Each of these upper and lower sections comprises a pair of opposed cantilever beams, each beam having inwardly converging proximal section 22, arcuate contact section 24 and a distal section 26. The opposed distal sections 26 are preferably parallel to each other. The distal sections can be positioned slightly apart when the beams are in relaxed condition, but come together when the beams are deflected as the front projection is inserted into a receptacle contact (as explained below). This provides over-stress protection for the beams during mating. The side walls also include planar panels 28 and 30. Terminals 32, 34, 36 and 38 extend from an edge of panel 28. Terminal 40 extends from panel 30, along with a plurality of like terminals (not shown). Terminals 32-40 can comprise through hole, solder-to-board pins (as shown), press fit pins or surface mount tails. The panels 28 and 30 are connected by upper arcuate bridging elements 42 and 44. A medial space 46, adapted for airflow, is defined between the panels 28 and 30. The contact 10 is stamped or otherwise formed as a single piece from a strip of suitable contact materials such as phosphor bronze alloys or beryllium copper alloys. [0062] Referring to FIGS. 3 and 4, receptacle contact 48 is shown. This receptacle contact has opposed, preferably planar and parallel side walls 50 and 52. These walls extend forwardly in a front projecting portion 54, that forms a medial plug receiving space 56. The distance between walls 50 and 52 at portion 54 is such that the projection 16 of the plug contact 10 is receivable in the plug contact receiving space 56, with the beams being resiliently deflected toward the center plane of contact 10. The deflection causes the beams to develop outwardly directed forces, thereby pressing the arcuate portions 24 against the inside surfaces of the portions 54 forming the receiving space 56, to develop suitable contact normal force. The side walls 50 and 52 also include, respectively, panels 58 and 60. Extending from panel 58 there are terminals 62, 64, 66 and 68. Extending from panel 60 there is terminal 70 as well as several other terminals (not shown). These terminals are essentially the same as previously described terminals 32-40. The side walls 50 and 52 are joined together by generally arcuate bridging elements 72 and 74. Preferably, the receptacle contact is also stamped or otherwise formed in a single piece from a strip of phosphor bronze alloy or beryllium copper alloy. [0063] FIGS. 5-9 illustrate a plug connector 75 having an insulative plug housing 76. The housing 76 includes a front side 78 having a plurality of power contact apertures 84 and 86. The front projection or mating portion 16 (FIGS. 1 and 2) of the plug contacts is disposed in apertures 84, 86. The plug contacts 10 are retained in the housing 76 by an interference fit between the contact and the housing. This is accomplished by having the dimension H (FIG. 2), the dimension between bottom edge of wall 12 and the top of bridging element 42, slightly greater than the dimension of the cavity in housing 76 that receives this portion of plug contact 10. The front side 78 may also include a signal pin array opening 88 for housing a signal pin array designated generally as numeral 90. The housing 76 also includes a number of rear vertical partitions, such as partitions 92 and 94, which form power contact retaining slots 96 for housing the plug contacts 98. The opposed medial vertical partitions 100 and 102 form between them a rear signal pin array space 104 for housing the rear portion 106 of the signal pins. The housing 76 also includes opposed rear mounting brackets 108 and 110 which have respectively mounting apertures 112 and 114. The plug contacts 10 have terminals 32, 34, 36, 38 and 40 extending below a bottom edge 80 of housing 76. The edge 80 forms a mounting interface, along which the housing is mounted to a printed circuit board or other structure on which the connector is mounted. [0064] Referring to FIGS. 10-14, a receptacle connector 128 is shown. Receptacle 128 has an insulative housing 129 with a front side 130 including a plurality of silos 131 having contact openings, such as openings 136 and 138. The front side 130 forms a mating interface of the connector 128 for mating with plug connector 75. The silos 131 are configured and sized to be received in openings 84, 86 of connector 75. The front portions 54 (FIGS. 3-4) of the receptacle contacts are disposed within silos 131 and openings 134, 136 are sized and configured to receive the upper and lower sections 18 an 20 of plug contacts 10. The front side 130 has a signal pin receiving area 140 with signal pin receiving apertures. The housing 129 also has a plurality of rear partitions, such as partitions 144 and 146, which form contact retaining slots 148 for housing receptacle contacts 48. Signal pin housing 152 receives a signal receptacle contact array 154. The housing 129 also includes opposed rear mounting brackets 156 and 158 which have, respectively, mounting apertures 160 and 162. The receptacle contact terminals 62, 64, 66, 68 and 70 extend beneath surface 137, that forms the mounting interface of receptacle connector 128. The front side 130 of the housing 128 also has a plurality of vertical spaces 176 and 178, disposed between silos 131. [0065] The receptacle contacts 48 are retained in housing 129 by an interference fit in essentially the same manner as previously described with respect to plug contacts 10. Retaining the contacts in this fashion allows substantial portions of the walls 12, 14 of the plug contact and walls 58, 60 of the receptacle contact to be spaced from surrounding parts of the respective housings 76 and 129. This leaves a substantial proportion of the surface area of both contacts (including the plug contacts), exposed to air, thereby enhancing heat dissipation capabilities, principally through convection. Such enhanced heat dissipation capabilities are desirable for power contacts. [0066]FIG. 15 shows another plug connector 200 embodying the invention. In this embodiment, the housing 202, preferably formed of a molded polymeric material, has a front face 204 that forms the mating interface of the connector. The face 204 includes a plurality of openings, such as openings 206, formed in a linear array. [0067] Referring to FIG. 16, the plug connector 200 includes a plurality of plug contacts 208. The contacts 208 are inserted from the rear of the housing into cavities 212 that extend from the rear of the housing toward the front of the housing. When the contacts 208 are fully inserted into the housing 202, the contact portions 210 with contacts 208 are disposed in the openings 206. [0068] Referring to FIG. 17, the plug contact 208 is similar in many respects to the plug contacts shown in FIG. 1. It includes spaced panel-like walls 214, 216 that preferably are planar and substantially parallel. The walls 214, 216 are joined by a front bridging element 218 and a rear bridging element 220. In this embodiment, the contact section 210 is formed by two opposed cantilevered beams 211 that extend from front edges of the walls 214, 216. Preferably, each wall includes a fixing tang 224 formed along a bottom of the edge of the wall. The walls 214, 216 also include lateral positioning elements, such as bent tangs 222, for centering the contact within cavities 212 in housing 202. Each wall also includes a positioning feature, such as raised lug 234. [0069] The front bridging element 218 includes a rearwardly extending retention arm 228 that is cantilevered at its proximal end from the bridging element. Arm 228 includes a locating surface 230 at its distal end. [0070] Terminals, such as through-hole pins 226, extend from the bottom edge of each wall 214, 216. The terminals 226 can be solder-to-board pins (as shown) or can comprise press fit or other types of terminals. [0071] As can be seen from FIG. 17, the contacts 208 can be formed from sheet stock by stamping and forming the part from a strip of metallic stock suitable for forming electrical contacts. The contacts 208 can be retained on a carrier strip S for gang insertion or separated from the strip prior to insertion into a housing. [0072] Referring to FIG. 18, the contact 208 is inserted into housing 202 from the rear into cavities 212 (FIG. 16). The contact 208 is located (in the vertical sense of FIG. 18) by engagement of the bottom edge 215 (FIG. 17) against surface 232 of the housing and by engagement of the top edges of the lugs 234 with the rib 236 in the upper part of the housing. The contact is maintained centered within the cavity 212 by the lateral tangs 222 that engage side walls of the cavity 212. The contact 208 is longitudinally locked in the housing (in the direction of contact mating) by means of the spring arm 228 that is deflected downwardly by the rib 236 of the housing during insertion and then resiles upwardly to position the stop surface 230 at its distal end against or near the forward surface of the rib 236. [0073] The downwardly extending tang 24 is preferably received in a slot 225 in the housing, the width of the slot being substantially the same as the thickness of the tang 224. By capturing the tang 224 in the slot 225, deformation of the wall section, as might occur when the cantilever arms 211 of the contact section are urged toward each other, is limited to the portion of the walls 212, 216 disposed forwardly of the tangs 224. This enhances control of the contact normal forces generated by deflection of the cantilever arms 211. [0074] As shown in FIG. 18, the terminals 226 extend below the bottom surface 238 of the housing 202, which bottom surface defines a mounting interface of the connector, along which it is mounted on a printed circuit board. [0075]FIGS. 19 and 20 show a receptacle connector for mating with the plug connector illustrated in FIGS. 15-18. The receptacle connectors 240 include an insulative housing 242 that comprises an array of receptacle silos 244. The front surfaces 246 of the silos are substantially coplanar and form a mating interface of the connector. Each silo has an opening 248 for receiving the contact section 210 of the plug contacts 208 of the mating connector. The plurality of receptacle contacts 250 are mounted in the housing 242, preferably by insertion from the rear into cavities 252. As shown in FIG. 20, preferably the top wall 254 of the housing does not extend fully to the rear of the connector housing, thereby leaving substantial openings in the cavities 252. [0076] The receptacle contact) for receptacle connector 240 is illustrated in FIG. 21. The contact 250 is similar in basic form to the receptacle contact 48 illustrated in FIGS. 3 and 4. It includes two opposed walls 254, 256 that are preferably substantially planar and parallel, thereby forming between them a contact receiving and air flow space. The walls 254, 256 are joined by a front bridging element 258 and a rear bridging element 260. The front bridging element 258 includes a resilient latching arm that is cantilevered at its proximal end from bridging element 258 and carries at its distal end the latching or locking surface 264. As described previously, the receptacle contact 250 can be formed in a single, unitary piece, by stamping and forming the contact from a strip. As mentioned previously, the contacts can be inserted into the housing while attached to carrier strip S or after being separated therefrom. [0077]FIG. 22 is cross-sectional view showing a receptacle contact 250 inserted into housing 242. As shown, the locating tang 266 is positioned with its forward surface against the locating surface 272 in the bottom wall of the housing 242, thereby positioning the contact in its forward-most position. As the contact is inserted in the housing, the latching arm 262 is caused to resile downwardly when it engages the latching portion 278 of the housing. As the latching arm 262 resiles upwardly after it passes the latching section 278, the locking surface 264 engages a raised rib 280 (FIG. 22b) thereby locking the contact against rearward movement with respect to the housing. The terminals 268 extend beyond the surface 270 that forms the mounting interface of connector 240. [0078] As illustrated in FIGS. 22a and 22 b, the forward portions of the walls 254, 256 are disposed along inside side walls of the silos 44. At the forward surface 246 of each silo, a plug contact receiving opening 248 is formed. The opening includes a pair of lips 274 that are coplanar with or extend just slightly beyond the inside surfaces of the walls 254, 256. This arrangement provides the benefit of lowered initial insertion forces when the connectors 200 and 240 are mated. As the silos 244 enter the openings 206 (FIG. 15), the contact sections 210 formed by the cantilevered arms 211 first engage the surfaces of lips 274. Because the coefficient of friction between the cantilevered arms 22 and the plastic lips 274 is relatively lower than the coefficient friction between the cantilevered arms and the metal walls 254,256, initial insertion force is minimized. [0079]FIG. 23 shows another embodiment of plug connector 290. In this embodiment, the housing 292 has a single front opening 294 in which the contact sections 296 of the plug contacts are disposed. The housing also includes a plurality of openings 298 in the top wall of the housing. As shown in FIG. 23a, the bridging element 218 and locating lug 234 engage the top surface 301 of the contact receiving cavity and the bottom surface 295 of the cavity in an interference fit. The arm 228 deflects downwardly as the contact is inserted into the housing and the arm engages portion 303. When the arm 228 clears portion 303, the arm resiles upwardly to locate stop surface 230 adjacent surface 299, thereby locking the contact against retraction. The openings 298 are positioned above the latching arms 228 (FIG. 18), to allow the arm 228 to be moved from a retention position and the contacts to be withdrawn from the housing. This can be accomplished by insertion of a suitable tool (not shown) through opening 298. Openings 298 can also provide air flow passages for enhancing heat dissipation. [0080]FIG. 24 illustrates a receptacle connector 300 adapted to mate with plug connector 290. The receptacle connector 230 employs a housing 302 having a continuous front face 304, rather than a plurality of silos as in previous embodiments. The entire front face 304 of the connector 300 is received in opening 294, with the contact sections 296 inserted into openings 305 of face 304. Openings 306 in the top wall of the housing allow access to the latching arms of the receptacle contacts (not shown) as described in the previous embodiment. [0081] The embodiment of FIG. 24 and also the embodiment of FIGS. 25 and 26 are meant for use in a vertical configuration, as opposed to a right angle configuration. The housing 302 of connector 300 (FIG. 24) has a bottom side 307. Preferably, a plurality of standoff surfaces 309 form a mounting interface, along which the housing is mounted on a substrate, such as a printed circuit board. Similarly, the housing of connector 320 has a bottom surface 321 with standoffs 323. Appropriate receptacle contacts 322 (FIG. 7) are inserted into the housings of connectors 300 and 320 from the bottom sides 307 and 321, respectively. [0082]FIG. 27 shows a receptacle contact 322 comprising a pair of preferably planar parallel walls 324, 326 that form between them a contact receiving space for receiving plug contacts of the type previously described. This contact has terminals 328 extending from a rear edge of each of the walls. As shown in FIG. 28, the contact 322 is received in housing 330 in a manner similar to that previously described, wherein the resilient latching arm locks the contact against downward (in the sense of FIG. 28) movement, while a locating surface 334 locates the contact in the opposite direction with respect to the housing. The terminals 328 extend beyond the plane of the mounting interface of the connector housing for insertion into through holes in the printed circuit board. [0083]FIG. 29 shows an embodiment employing two sets of contacts at each location, in a stacked configuration. The receptacle connector 340 has a housing formed of insulative material. The housing 342 includes a mating interface having a plurality of openings 341. Each of the openings 341 open into cavities in housing, which cavities receive substantially identical receptacle contacts 344 a and 344 b. Each of the contacts 344 a and 344 b is similar in general construction to the receptacle contacts previously described, there being a pair of such contacts in each cavity, generally aligned along the side walls thereof, to form a gap between generally parallel plate sections 346. The plate sections 346 have two opposed edges 348 and 350, one of which carries a retention feature, such as interference bump 352. The receptacle contact sections 356 are retained in the housing by suitable means, such as an interference fit created by the bump 352. Each contact section 356 includes a generally coplanar wall section 354. The wall sections 354 are joined by a bridge section 355. Suitable terminals, such as press fit terminals 356 extend from an edge of the wall section 354, in the case where the connector 340 is to be used in a vertical configuration. [0084] The mating plug connector 360 includes a molded polymeric body 361 that receives a pair of plug contacts, such as upper plug contact 362 and the lower plug contact 376. These plug contacts are configured generally in the manner previously described, namely, being formed of a pair of spaced wall sections 364 and 368 respectively joined by bridging elements and carrying opposed contact beams 366 and 380 to engage the spaced receptacle plates 346. The plug contact 362 includes a single, relatively long, or several, relatively short, bridging elements 376 that join two opposed plates 364. The bottom edge 372 of each of the plates 364 includes retention structure, such as an interference bump 374. The plug contact 362 is retained in its cavity within housing 361 by an interference fit between the bridging elements 376 and the interference bump 374, although it is contemplated that other retention mechanisms could be utilized. Similarly, lower plug contacts 376 comprise a pair of coplanar wall or panel members 378 joined by one or more bridging elements 382. The lower edge 384 of each wall 378 includes an interference bump 386, that functions to create an interference fit, as previously described. Suitable terminals 368 and 380 extend from each of the panels 364 and 368, beyond the mounting interface 363 of the housing 361, for associating each of the contacts 362 and 376 with electrical tracks on the printed circuit board on which the plug 360 is to be mounted. [0085] The previously described receptacle and plug contacts may be plated or otherwise coated with corrosion resistant materials. Also, the plug contact beams may be bowed slightly in the transverse direction to enhance engagement with the contact receiving surfaces of the receptacle contacts. [0086] The �dual-mass� construction of both receptacle and blade contacts, employing opposing, relatively thin walls, allows for greater heat dissipation as compared with prior �singular-mass� designs. The enhanced heat dissipation properties result from the contacts having greater surface area available for convection heat flow, especially through the center of the mated contacts. Because the plug contacts have an open configuration, heat loss by convection can occur from interior surfaces by passage of air in the gap between these surfaces. [0087] The contacts also contain outwardly directed, mutually opposing receptacle beams and dual, peripherally located, mating blades, in a configuration which can allow for flexibility in modifying contact normal forces by adjustment the contact connector geometry. This can be accomplished by modifying the bridging elements to change bend radius, angle, or separation of the walls of the contacts. Such modifications cannot be accomplished with conventional singular-mass beam/blade configurations wherein the opposing receptacle contacts are inwardly directed, and the mating blade is located in the center of said beams. [0088] Such dual, opposing, planar contact construction also allows for easier inclusion of additional printed circuit board attachment terminals with more separation between terminals, compared to an equivalent �singular-mass� bulk designs. The use of relatively larger plates in the plug and receptacle contacts gives this opportunity for providing a plurality of circuit board terminals on each contact part. These lessens constriction of current flow to the printed circuit board, thereby lowering resistance and lessening heat generation. [0089] The use of a compliant plug mating section allows the receptacle contacts to be placed in a protected position within the molded polymeric housing for safety purposes. This feature is of further benefit because it allows minimization of amount of polymeric material used in making the housing. This lowers material costs and enhances heat dissipation. Also, by retaining the contacts in the housing in the manner suggested, thick wall structures can be avoided and thin, fin like structures can be utilized, all of which enhances heat dissipation from the connectors. Additionally, first-make, last break functionality can be incorporated easily into disclosed connector system by modifying the length of the mating portion of the plug contacts or by changing the length of the plug-receiving portion of the receptacle contacts. [0090] The arch connection structure between opposing rectangular contact sections also allows for attachment of retention means, such as a resilient arm structure as shown in one of the current embodiments, in a manner that does not limit current flow or hinder contact heat dissipation capability. [0091] It will also be appreciated that the plug and receptacle contacts may be manufactured from closely similar or identical blanks thereby minimizing tooling requirements. Further, the plug or receptacle connectors can easily be associated with cables, by means of paddle boards. [0092] Connector Accomodating AC Power Supply [0093] Any of the power connectors previously described herein can be modified to accommodate connections for an external AC power supply. For example, the insulative housing of the receptacle connector shown in FIG. 10, which has been previously described as providing for the ability to provide for signal and power connections, can be extended to accommodate additional openings for incorporation of contact terminals therein, which terminals provide connection to the external AC power input terminals. An illustrative embodiment is shown in FIGS. 30-32, which shows a signal and power receptacle connector 400 of the type described in the parent application, U.S. patent application Ser. No. 09/160,900, incorporating AC power cable connections. [0094] The receptacle connector 400 includes an insulative housing 402 with a front side 404 including an array of contact openings, such as openings 406 and 408. Front side 404 also includes a signal receptacle in the form of signal pin receiving area 410 with signal pin receiving apertures. One of ordinary skill in the art will understand that the portion of the receptacle connector 400 that includes the contact openings 406 and 408 and the signal pin receiving area 410 is similar in many respects to the connectors described previously. A receptacle contact, such as any one of those described previously, is disposed and retained within a corresponding opening of the receptacle housing. The connector is shown in FIG. 30 with those contacts (and signal pins) other than the AC power supply contacts removed for clarity. In this regard, a connector including AC cable connections is not intended to be limited to any particular arrangement of the contacts and contact openings, as well as the configuration thereof, that have been described previously. [0095] Included in the front side 404 of the housing 402 are three exemplary AC power contact openings 412. Disposed and retained within each of the AC power contact openings 412 is a corresponding AC power spade terminal 414. The AC power contact openings are sized and configured to receive the AC spade terminals 414 with an interference fit and in a preferred embodiment the terminals are retained in the housing in a manner described below. [0096]FIGS. 33 and 34 show the AC power spade terminal 414. The rear portion 416 of the terminal comprises two opposing major side walls 418 and 420, which are preferably planar and parallel in a manner similar to the side wall portion of the contacts described in FIGS. 1-4. In a manner similar in many respects to the contacts described previously, the side walls 418 and 420 of spade terminal 414 are connected by arcuate bridging elements 422 and 424. Again, similar to the previously described contacts, a medial space 426, adapted for air flow, is defined between side walls 418 and 420. Thus, one of ordinary skill in the art will recognize that the benefits of heat dissipation provided by the previously-described contacts having opposing side walls are also provided by AC power spade terminal 414. The AC power spade terminal 414 further includes cable plug projection 428. Cable plug projection 428 comprises a pair of opposed cantilever beams 430, 432 with each such beam being integrally joined to proximal portion 434, which integrally joins a respective beam to a respective side wall. The AC power spade terminal is stamped or otherwise formed as a single unitary piece from a strip of suitable contact materials such as phosphor bronze alloys or beryllium copper alloys. The spade terminal, or portions thereof, may be plated or otherwise coated with corrosion resistant materials [0097] The cable plug projection 428 of each AC power spade terminal according to the invention provides for engagement with a corresponding quick connect socket on the end of a corresponding AC power cable wire lead. These quick connect sockets are known in the art. The cantilevered beams 430 and 432 are closely spaced together, particularly at their respective proximal and distal ends, in a state prior to engagement with the quick connect socket and each of the cantilevered beams has a slight arc near the mid-point of the beam, as shown in FIG. 34. The configuration of the beams 430 and 432 in this manner creates a spring-like effect upon engagement of the cable plug projection 428 into the quick connect socket of the cable wires. The spring design feature of this spade terminal provides for a secure and positive locking engagement of the quick connect socket onto the AC power spade terminal and also provides more forgiveness in the mating between the plug projection and the quick connect socket in those circumstances where the quick connect socket is not flexible, such as where the quick connect sockets of the AC cable wires are molded inside a plastic connector housing. [0098] The cable plug projection 428 of each of the AC power spade terminals 414 extends a significant distance beyond the rear face 436 of the connector housing 402 so that the cable plug projection of each spade terminal can be mated with a corresponding quick connect socket of an AC power cable wire. One of ordinary skill in the art will recognize that significant current levels will be maintained through the AC power spade terminals. In order to protect the spade terminal and quick connect socket connection from coming into inadvertent contact with a user that may be installing other components into the system, a protective shroud 438 may be joined to the connector housing to cover the spade terminals connections, as shown in FIG. 30. Referring also to FIGS. 35-37, the shroud has two rear projections 440 and 442 that protrude from the rear face 444 of the shroud 438. To seat the shroud in place over the spade terminal contacts, the two rear projections 440 and 442 of the shroud are inserted into corresponding slots 446 and 448 in the connector housing 402. The shroud also has three slotted openings 450, 452, and 454 that are formed in the rear face 444 and the bottom face 456 of the shroud. When the rear projections 440 and 442 are seated into the slots 446 and 448 of the housing, the slotted openings 450, 452, and 454 receive a corresponding AC power spade terminal 414 such that the spade terminal becomes enshrouded by the shroud casing 456 when the shroud is seated into position onto the connector housing 402. The shroud also incorporates polarization hubs 458 and 460 to ensure a proper orientation of the shroud onto the connector housing. The shroud may be made of any suitable molded plastic material. [0099] The connectors described thus far have been illustrated with three AC power spade terminals incorporated into the connector housing for receiving an external AC power supply connection. The present invention is not intended to be limited in this manner and the connector could be designed to accommodate six of more spade terminals for receiving any corresponding number of AC power supply connections. Also, the present invention is not intended to be limited to the particular design of the AC power spade terminals described herein, nor the configuration of the spade terminals inside the connector housing. Furthermore, direct incorporation of external AC power supply connections into connectors of the type otherwise described herein can be achieved for a wide variety of connector housings, such as the right angle power connectors and the vertical power connectors described herein. [0100] A retention mechanism for retaining the AC power spade terminal 416 within the connector housing 402 is shown in FIGS. 30 and 32-33. This form of retention mechanism differs from that shown for the contacts illustrated in FIG. 17, for example, where the retention mechanism is a retention arm 228. For the AC power spade terminal 414 the contact is retained in the connector housing 402 by engagement of a locking bar onto the contact. More specifically, the AC power spade terminal has a gap 462 formed between the rearward arcuate bridging element 422 and opposing tangs 464. When the AC power spade terminals are disposed into position with the connector housing 402 the gaps in each of the corresponding terminals are exposed in a slotted recess 466 in the connector housing such that the gaps 462 across the adjacent spade terminals are aligned with the slotted recess 466. A locking bar 468 of appropriate dimension is positioned into the slotted recess 466 in the connector housing 402 such that the locking bar is seated across the gaps 462 of the spade terminals between the respective rearward arcuate bridging element 422 and the tangs 464 of each spade terminal. In a preferred embodiment as shown in FIG. 30 the locking bar 468 is integrally formed as part of the shroud 438 so that when the shroud is positioned onto the connector housing 402 the locking bar 468 is seated into position in the slotted recess 466. This is not necessary and the locking bar could be a separate piece of plastic material or some other suitable material. The AC power spade terminal is otherwise engaged within the connector housing 402 by a friction fit between the spade terminal and the connector housing. When the locking bar 468 is seated into position within the connector housing 402 engagement of the rearward arcuate bridging element 422 against the locking bar prevents the AC power spade terminal from being pulled out of its engagement within the connector housing. [0101] Another configuration of a power connector incorporating connections for an external AC power supply is shown in FIGS. 38-41. In this embodiment, the connector housing is designed for AC power spade terminals only. In this example, six AC power spade terminals 470, similar to those described previously, are disposed in connector housing 472. Again, the connectors are not intended to be limited to a design for six cable wires and the connector housing can be designed to accommodate any desired number of AC power spade terminals. The top face 473 of the connector housing exposes the opposing side walls of the receptacle end of the AC power spade terminals for mating with an appropriate header or plug connection. The AC power spade terminals are engaged in the connector housing by a friction fit as described previously and are retained in the housing by engagement with a locking bar 474 in the same manner described above. In this embodiment, the locking bar 474 is a separate piece. The connector housing is disposed within opposing halves 476 and 478 of a clamshell cable casing, which cable casing is of the type known in the art. In a preferred embodiment the cable casing is modified to include a groove 480 extending around the perimeter of the casing. A mounting bracket 482, which is affixed to some component structure by the use of screws or the like through holes 484, is designed such that opposing wings 486 and 488 and rail 490 fit into the groove 480. Power connectors of the type described herein float or move with respect to each other when they are mated together due to the design of the post projections 492 and the corresponding post-receiving holes in the mating connector. In order to accommodate the floatable characteristics of the mated power connectors described herein, the mounting bracket is dimensioned such that the wings 486 and 488 and the rail 490 fit loosely within the groove 480. As such, the connector housing 472 can float from side-to-side and forward-to-backward while being otherwise maintained in place by the mounting bracket 482. One of the wings of the mounting bracket can have a cut-out 494 that loosely engages a tab on the connector housing as a polarization feature to ensure proper orientation of the mounting bracket onto the cable casing. Otherwise, the loose fitting nature of the mounting bracket into the groove of the cable casing provides for blind mating of cable connector into the mounting bracket. This is beneficial due to the crowding of various connections in the system, which connections may be at a remote location that is difficult to access for a user. [0102] In some applications, power is supplied to the electronics assembly via conventional bus bars. FIG. 42 shows a connector incorporating a preferred embodiment of new contacts for connection to a bus bar 496 having opposing arms 498 of U-shaped projections. Bus bar terminal contacts 500 are disposed in connector housing 502. The rear portion of the bus bar terminal contacts is similar in many respects to that of the plug contacts 10 and the receptacle contacts 48 shown in FIGS. 1-4 in that the bus bar terminal contacts have two opposed major side walls 504 and 505, which side walls define a medial space 507 adapted for air flow. The bus bar terminal contacts are retained in the housing by the engagement of a spring arm 506 in a slot 508 in the housing. The front portion of the bus bar terminal contacts comprises a clip 510 for engagement onto one of the arms 498 of the U-shaped projections. The clip 510 has two opposing clip side walls 512 and 514, which clip side walls are engaged onto the arm 498. The clip side walls 512 and 514 are bowed slightly in the transverse direction to enhance engagement with the arm 498. Each clip side wall has wing tabs 516 that are joined to the side wall by arcuate elbow 518. The distance between the elbows 518 of the opposing side walls is slightly less than the thickness of the arm 498 such that the elbows create an inward force on the arms when the clip 510 is engaged onto the arm. [0103] The bus bar terminal contacts described herein can be used in any connector for engagement of bus bars and are not intended to be limited for use in the connector housing configuration illustrated herein. For example, any of the receptacle connectors described herein can be modified to accommodate incorporation of bus bar terminal contacts for mating the power connectors herein with bus bars. [0104] Connector with Plug and Receptacle Contacts [0105] According to an aspect of the invention, a connector may comprise both a receptacle connector, i.e. female connector, and a plug connector, i.e. male connnector. FIGS. 43 and 44 provide perspective views of an illustrative embodiment of a connector comprising both a receptacle and plug connector. Generally, mating connector 600 comprises an insulative housing 610 that comprises a receptacle connector portion 612 and a plug connector portion 614. [0106] Receptacle connector 612 has a mating interface 620 and a mounting interface 622, with a receptacle contact cavity 624 therein extending from mating interface 620 to mounting interface 622. A receptacle contact 626, such as those described above is located in the receptacle contact cavity. Generally, receptacle contact 626 comprises a pair of opposed walls wherein each of the walls is mounted adjacent to one of the side walls of the receptacle cavity. The receptacle contact walls are spaced a distance so as to compressively engage the contact surfaces of the beams of a plug contact between the walls of the receptacle contact. Receptacle connector 612 further comprises a series of signal pin receiving apertures 628 for interconnecting with signal pins. While an illustrative embodiment of the receptacle connector 612 is shown in FIGS. 43 and 44, those skilled in the art will recognize that alternative embodiments may be employed. Indeed, receptacle connector 612 may be formed similar to any of the receptacle connectors discussed above in connection with FIGS. 1 through 42. [0107] Plug connector 614 comprises mating interface 640 and mounting interface 642, with plug cavity 644 extending therebetween. A plug contact 646, which may be, for example, a contact such as is described above in connection with FIGS. 1 through 42, is located in plug cavity 644. Plug contact 646 comprises a mounting portion having a pair of spaced walls 648 wherein each wall is positioned adjacent one of the side walls of the plug contact cavity. Plug contact 646 further comprises a mating portion, or contact section 650 which are received into corresponding receptacles 624 in a receptacle connector. Mating portions 650 comprise an opposed pair of beams wherein the proximal portion of each beam extends from one of the plug contact walls toward a mating interface. Mating portions 650 have opposed, spaced interior surfaces in facing relationship and exterior facing surfaces, wherein the exterior surfaces comprise contact surfaces. Plug connector 614 further comprises a series of signal pins 660 which are received into corresponding receptacles 624 in a receptacle connector. While an illustrative embodiment of the plug connector 614 is shown in FIGS. 43 and 44, those skilled in the art will recognize that alternative embodiments may be employed. Indeed, plug connector 614 may be formed similar to any of the plug connectors discussed above in connection with FIGS. 1 through 42. [0108] As shown in FIG. 44, connector 600 is designed to be interfaced with a similarly formed connector. The plug connector portion 614 of a first connector mates with the receptacle connector portion 612 of a second connector. Similarly, the receptacle connector portion 614 of the first connector mates with the plug portion of the second connector. In both instances, signal pins 660 from the plug connectors 614 are accepted into the apertures 628 in the receptacle connector 612. Likewise, the contacts 646 of plug connectors 614 are received into the contacts 626 of the receptacle connectors 612. [0109] While an illustrative embodiment of a connector comprising both receptacle and plug contacts has been described in connection with FIGS. 43 and 44, those skilled in the art understand that there may be alternative embodiments that fall within the scope of the invention. For example, the plug and receptacle connector portions of the connector may take on numerous configurations such as, for example, those described in connection with FIGS. 1 through 42. Accordingly, reference should be made to the attached set of claims in construing the scope of the invention. Referenced by
Legal Events
Rotate |

subset: commoncrawl


text:
"Share your story… it might inspire others.
If you don't begin to change something, things won't change.
If you keep waiting, 'until you are ready', you will wait till the end of your life.
Addiction to life is the biggest gift… Addiction to substance is a living hell.
Drugs changed everyone's perception of me... but i am the same person!
Happiness increases by sharing and sorrows decrease by sharing...
Everything is possible… you just have to do it.
When you loose yourself in addiction, you loose loved ones and the loved ones loose you.
If you think today is the worst day of your life, then you also know, tomorrow will be better.
The path in front of you is your own path. People can walk it with you but no one can walk it for you!"
(The spoken words forming the narrative thread of the video, edited from the conversations/text generated in the residency with the participants in Kütahya.)
I AM is an arts project between UK, Italy and Turkey... presenting memoirs of people in recovery from addiction of alcohol and mixed substances. Sharing here some work in progress. Through intensive workshops I am creating a collaborative body of video and photographic 'self-portraiture' to reflect on a subject riddled with taboo and social stigma. It is only through sharing the hopes and fears that a better relationship can be developed with love and respect.
Originated by Portraits of Recovery, and developed in partnership with: Arts for Health - Manchester metropolitan University, UK, Incontro and FeDerSerd, Italy and The Turkish Green Crescent Society, Kütahya branch. Funded by Grundvig - European Unions Life Long Learning Programme.
Loading more stuff…


text:
Not the best but worth the money especially if you are only sleeping there. The room fit 6 adults fairly comfortably. Tiny double beds and sofa bed but acceptable. Not a huge breakfast but coffee, instant oatmeal, muffins and granola bars to go. Kitchen area not well equipped for actual eating. Microwave worked and we had the fridge so that was good.
- Reservation Options:
- TripAdvisor is proud to partner with Extended Stay, Booking.com, Expedia, EasyToBook, Travelocity, Orbitz, Hotels.com, Priceline, Despegar.com, Odigeo and Tingo so you can book your Extended Stay America - Indianapolis - Northwest - I-465 reservations with confidence. We help millions of travelers each month to find the perfect hotel for both vacation and business trips, always with the best discounts and special offers.
- Also Known As:
- Extended Stay Deluxe Indianapolis - Northwest - i-465 Hotel Indianapolis
- Extended Stay America Indianapolis
- Extended Stay Indianapolis
- Indianapolis Extended Stay


text:
Soft Leather Jacket
I love this jacket <3
2014-03-01 06:38:47Can u tell plz which size did u take?
2014-04-14 16:39:00Sign up for sheinside style news
Do you want to have Wholesale discount?
Wholesalers can enjoy at least 25% off, just the minimum order must be over US$200. More discount if you order more.
Signing in to Sheinside,sit back and relax....
We are signing you in using your Facebook or Twitter accountYour account needs an email binding | |
Email: | |
The email you entered is invalid |


text:
Dec 25, 2012, 11:24 PM | |
I put them at the root, to avoid tip-stall in turns. I've also experimented with putting them on the sides and bottom of the fuselage but with no discernible advantage.
Latest blog entry: Stogie FM 1955 12
Dec 26, 2012, 12:21 PM | |
United States, NC, Whispering Pines
Joined Dec 2012
65 Posts
Got the champ for Xmas, and I can't believe how easy it is to fly! 20 years ago I built two balsa trainers, and crashed both badly. Converted to boats.
I have been practicing on a free sims application on my iPad, and looked up some vids on YouTube . Took the plane to a local ball field, hand launched, trimmed it out per video, ( had to use pliers to adjust rudder rod), and I was flying like a pro! I have failed at flying bigger planes, and was intimidated by local rc club, but this little guy can take a beating, and gets you ready for the bigger stuff! My average flight time is 20 minutes on the little battery. Amazing how this hobby has advanced! |
Dec 26, 2012, 12:28 PM | |
Well my Orange DSM2 module arrived , i programed the Champ chanel order in er9X , binded and it works..
i guess nothing else needs to be done right? Still i encountered a couple of issues.. the main one being the throotle doesnt start until you reach 15% of stick lenght.. i increased the trim forward and now i can make it start sooner, but that im afraid will make reach full throotle before the end of the chanel.. another option here would be using a curve since i have Er9X wich allows all that kind of stuff another issue was that the motor stoped in midflight and now wont start... but the servos work well.. but im guessing that might be the motor wire coming off and not radio related.. (i hope) |
Dec 26, 2012, 04:37 PM | ||
Joined Aug 2012
192 Posts
Dec 26, 2012, 07:51 PM | ||
Joined Aug 2012
192 Posts
Dec 27, 2012, 05:41 PM | |
I'll have to take some pictures, this weekend if not before. In the meanwhile you can search for "Gurney Flap" or look at a dive bomber making a run. It's just a "Post it" paper flap folded down at 90 degrees, stuck to the underside of the wing at the trailing edge root.
Or the Moth Minor's Drag Flap |
Latest blog entry: Stogie FM 1955 12
Dec 27, 2012, 09:30 PM | ||
Joined Aug 2012
192 Posts
Dec 27, 2012, 09:46 PM | |
I've used notes of several sizes. I find that the small ones (2x1-3/4 inch) work well without cutting. I fold the note on the edge of the glue line and stick them on. If I have the next larger size, I cut the note so the "flap area" is about the same as the adhesive area. I used to use such flaps on indoor FF... what's nice about the Champ is that, if the flap is too big, just add power. The prop slipstream will blow the flap back and become largely ineffective.
If you have doubts, cut the flap into segments and stick them to the wing a inch-or-so at a time, testing as you go.. |
Latest blog entry: Stogie FM 1955 12
Jan 01, 2013, 02:05 PM | ||
Joined Aug 2011
14 Posts
I did this a few months ago, and was suprised that my Champ, which already flies about as perfect as can be, flew even smoother after the upgrade. Plus having the extra range the DX6i has over the stock radio is nice too, along with the ten model memory. |
Thread Tools | |
Similar Threads | |||||
Category | Thread | Thread Starter | Forum | Replies | Last Post |
Discussion | What plane is this? Debolt Livewire Champ-w/short video | reacher10 | The Builders Workshop | 48 | Mar 29, 2011 04:20 PM |
Discussion | Super Champ Restoration | x-craft | Off-road Cars | 48 | May 25, 2010 08:48 PM |
For Sale | Champ (1/8th scale, electric) | Maggie Han | Aircraft - Electric - Airplanes (FS/W) | 12 | Mar 19, 2010 09:31 PM |
For Sale | 2x Ni-Mh batts will fit PKZ or HBZ planes | gazza1 | Aircraft - Electric - Batteries & Chargers (FS/W) | 0 | Sep 07, 2009 10:46 AM |
Question | digital camera for hbz extreme | bluescoobydoo | Aerial Photography | 0 | Jul 31, 2005 12:25 PM |