본문 바로가기

만들기 / making/robot BEAM

Bicores


Bicores

From BEAM Robotics Wiki

(Redirected from Bicore)
Jump to: navigation, search

Contents

[hide]

[edit] Definition

A loop-topology Nv net with just two Nv neurons (Nv) linked to each other. This results in a simple oscillator, which is used to drive one of a variety of circuits. Two broad types of bicores have been defined to date-- grounded bicores and suspended bicores. Figure 1 shows the Biomorphic Symbols for Bicores.

Figure 1
Figure 1

[edit] The Grounded Bicore

Figure 2: 2 Nv chain
Figure 2: 2 Nv chain
Figure 3: A 2-Nv loop
Figure 3: A 2-Nv loop


Figure 2 shows a schematic of two Nv neurons connected in series.

BEAMers referred to this as a Nv Chain.


Figure 3 shows the output of the second Nv neuron connected to the input of the first Nv neuron, thus forming a loop. This is a basic, "vanilla" bicore. Since both neuron's resistors are connected to ground, it's official full name is the grounded bicore. Thanks to the two inverters, this bicore will happily oscillate (the outputs of the two inverters will always be opposite each other) without further input.


The frequency of oscillation is a function of the values chosen for the resistors and the capacitors. Higher values result in slower oscillation frequency. The time that any given Nv neuron is in "active proccess", therefore producing an output pulse, is very nearly equal to R*C (in seconds). "Typical" values for these are 0.1 - 0.33 uF for the capacitors, and 1-4 MOhm for the resistors (so with 0.1 uF capacitors and 1 MOhm resistors, each Nv neuron "fires" for about 1 second). Depending on your application, and what is being driven by the bicore, you may want something faster or slower than this.


The duty-cycle of the resulting complementary waveforms, is determined by the values chosen for R and C for the individual Nv neurons. For instance, if a smaller value is selected for the capacitor, and/or the resistor of one of the Nv neurons, than are used for the other, the neuron with the lower value component(s) will be active for a shorter period (thus producing a shorter output pulse) than will the Nv neuron having the higher value component(s). As a result of this dependence on component value to set the duty cycle, any variance in the components' actual values from their marked value can result in a less that perfect 50/50 duty-cycle. If this presents a problem, then great care should be taken to match the components as nearly as is possible.


Generally Schmitt inverters are used for building grounded bicores, so these circuits are most-often made using 74*14 or 40106 ICs. A Schmitt inverter has a characteristic hysteresis. This means that the rising input voltage at which its output toggles "down" is guaranteed to be higher than the falling input voltage at which its output toggles "up." With a slow-rising or slow-falling input in a noisy environment (which describes the typical operation of a grounded bicore nicely), the output of a conventional inverter can start to oscillate between high and low as the voltage on the input approaches the switching threshold. On the other hand, a Schmitt inverter is guaranteed to have a quick, clean toggle from one output state to the other.

[edit] The Suspended Bicore

Figure 4
Figure 4

This is all well and good, but there's experimenting to be done! Let's start tinkering with our grounded bicore.

As illustrated in Figure 4, the circuit can be simplify a bit. First disconnect the resistors from ground. Next connect the free ends together. In fact, since only one resistor is actually needed, one of them can be removed from the circuit altogether. With the inputs of the two inverters connected together in this fashion (using only a single resistor) the grounded bicore is converted into what is called a suspended bicore.

Even though one of the resistors has been completely removed, the basic function of the circuit remains relatively unchanged. However, unlike the grounded bicore, the duty-cycle of the suspended bicore is determined by the capacitor with the lowest actual value. It therefore always produced a pair of near perfectly symmetrical (50/50) complementary waveforms.


Determining the timing of a suspended bicore is not as straight forward as calculating the time constant of a NV or grounded bicore.

Wilf Rigter explained in a post (message #44514) to the BEAM email list...

Quote

Perfect bicores can not operate at all or have an unpredictable low, low frequency. By perfect I mean precisely matched capacitors and an inverter switching threshold that is exactly Vcc/2.

Strangley, when bicore components are not quite perfect the frequency of suspended bicores can be estimated (but not precisely calculated) For example, suspended bicore circuits using HCT logic (with the TTL logic input threshold) are more predictable than circuits made with HC or AC inverters which have a threshold close to Vcc/2.

You can test this out yourself on a breadboard and changing components.

When I first saw the suspended bicore circuit I was convinced it could not work. After testing this apparenly very simple circuit and analyzing its operation, I find it has qualities that I can best described as charm or depth.

Despite the few parts required to build them, there are seemingly endless combinations of these basic amplified RC circuits useful for a variety of beam designs, in a way very similar that complexity is realized from simple rules in cellular automata processes.

End Quote

Figure 5
Figure 5
Figure 6
Figure 6
Figure 7
Figure 7
Figure 8 - This animation courtesy of Wilf Rigter
Figure 8 - This animation courtesy of Wilf Rigter


The schematics shown in Figures 5, 6 and 7 are xamples of three different ways a Suspended Bicore can be drawn.


In the illustration shown in Figure 8, red denotes Vcc and blue is 0 Volts; the colors in between represents various voltage levels between 0 Volts and Vcc. The color yellow at the input of the inverters means the voltage is nearing the 1/2 Vcc threshold and the bicore is about to change state. Note that the voltage on the end of the capacitors connected to the inverter outputs will always be fixed at either 0 Volts or Vcc when the bicore switches.

Also note that the voltages on both sides of the resistor slowly converge on 1/2 Vcc (i.e., the inverter switching threshold).


The suspended bicore configuration does require one other change. Specifically, the Schmitt inverters) must be replaced with regular inverters. This means that suspended bicore circuits will generally be built using 74*04, 74*240, 74*245, or 4069 ICs.

It seems that a Schmitt inverter's hysteresis, which is helpful in most Nv circuits, is all but fatal to the suspended bicores. Because the inputs of the two inverters are connected together by a single resistor, there will come a point when their the voltage on each will stabilize at a point very near Vcc / 2. If Schmitt inverters were used, the suspended bicore would come to a screaching halt at this point. This is because their characteristic hysteresis prevents the output oscillation that would allow a transition through Vcc / 2 to occur.

[edit] Schmitt Trigger Suspended Bicore

But there is a way to get around this difficulty if you absolutely must use Schmitt inverters in a suspended bicore. If you don't have a 74*240 inverter handy, you can go ahead and use the 40106 or 74*14 if instead of using 2 identical capacitors, the capacitance value of one of the capacitors is at least 2 times greater than the capacitance value of the other (i.e., 2 or 3 caps in parallel, or a 0.22 uF vs 0.1 uF cap).


The following is a short excerpt from an article by Wilf Rigter titled: BiCores (suspended, isolated, Schmitt)

Begin Excerpt

Here is some good news! A 74HC14 BiCore is indeed possible! (Forget about "crosstalk" 8^)

Just use two capacitors with a ratio of values greater than 1/2 for Schmitt triggers that have thresholds at 33% and 66% ie National 74HC14 . Since the smaller capacitor (the shorter process) sets the time constant of the BiCore you can make the ratio arbitralily large (make it 1 to 4 to be on the safe side given the variety of thresholds out there) The larger cap has no effect on timing other that to provide positive feedback during switching.

End of excerpt

[edit] Related Topics

[edit] BEAM Wiki References

Wilf Rigter has written several interesting articles (listed below) describing 'Bicores and how they function. They were titled:

Sent to: 'beam@corp.sgi.com' - - - CC:alt-beam Message 58 - - - Date: Jan 31, 1999 [1]

Sent to:'Wouter Brok' - - - CC:'beam@corp.sgi.com' - - - Date:12 Apr 1999

Sent to:beam@corp.sgi.com - - - Date:17 Apr 1999


Wouter Brok also wrote two very good articles (listed below) about the his experiments with bicores and what he learned about them. These were titled:

[edit] External References

The following to papres are available as downloadable PDF files from the BEAM PDFs section of the Reference library hosted by Solarbotics.net

[edit] Related Papers


'만들기 / making > robot BEAM' 카테고리의 다른 글

Suspended Bicore.- Wouter Brok  (0) 2009.04.30
Photo-Bicore  (0) 2009.04.30
Suspended Bicore  (0) 2009.04.30
Photodiode  (0) 2009.03.27
마우스로봇 - 제작기  (0) 2009.03.24