https://hackaday.io/project/191142-analog-lorenz-attractor-computer Hackaday.io Hackaday.io Projects Recently Updated Most Likes Newest Project Lists Discover Contests Courses Stack More Courses Tutorials Events Hackerspaces Profiles Hackaday.com Tindie Marketplace [ ] Sign up Log in Close 0% 0% Analog Lorenz Attractor Computer An analog computer for solving sets of Lorenz attractor differential equations CheeenNPPCheeenNPP Following Follow project Liked Like project Become a Hackaday.io member Not a member? You should Sign up. Already have an account? Log in. Sign up with Github Sign up with Twitter OR [ ] [ ] [*] Remember me [ ] [captcha] Sign up Forgot your password? Just one more thing To make the experience fit your profile, pick a username and tell us what interests you. Pick an awesome username [link] hackaday.io/ [ ] [complete-c] Your profile's URL: hackaday.io/username. Max 25 alphanumeric characters. Pick a few interests Projects that share your interests People that share your interests We found and based on your interests. Choose more interests. OK, I'm done! Skip Join this project Similar projects worth following 912 views 2 comments 18 followers 26 likes * Description * Details * Files 1 + View all * Components 0 * Logs 0 * Instructions 0 * Discussion 2 View Gallery 912 2 18 26 Team (1) * CheeenNPPCheeenNPP Join this project's team hardware ongoing project Analog Computer Chaotic circuits This project is submitted for * Op Amp Challenge This project was created on 05/17/2023 and last updated 7 days ago. Description After finding a good high linearity multiplier (NJM4200, log architecture), I built this Lorentz chaotic circuit, the essence of which is to use multipliers and integrators to solve the Lorentz equations. The Lorentz equation describes the principle of atmospheric dynamics, which is commonly known as the "butterfly effect", and the oscilloscope shows the Lissajous figure, just like the elusive drifting wings. Details Analog Lorenz Attractor Computer 1. The Origin of Analog Computer One of the main purposes of analog circuits is to solve mathematical problems, such as building a circuit corresponding to a nonlinear differential equation and analyzing the phase plane characteristics of it by observing its output voltage with an oscilloscope or analog plotter. I will take a famous nonlinear differential equation, the Lorenz Attractor, as an example, and show the whole process of solving it with an analog circuit. 2.Lorenz Attractor The Lorentz attractor is a set of equations describing the dynamical behavior of the atmosphere, which reveals the chaotic phenomena contained in meteorological changes and is known as the "butterfly effect". The Lorentz attractor consists of three nonlinear differential equations: Among them, sigma, b and r are the three constants that determine the characteristics of the system, commonly taken as sigma = 10, r = 28 and b = 8/3. Before building the analog circuit, we can simulate it with software to understand some basic characteristics (sounds a bit strange~~). The software used is Octave, and the Lorentz attractor function is declared in lorenz.m, where x is a three-dimensional vector set, and x(1), x(2), and x(3) represent x, y, and z in the original set of equations, respectively, while a scale factor k is added for further usage. % Lorenz.m function dx = lorenz(x, s, r, b, k) dx = zeros(3, 1); dx(1) = k*(s*(x(2) - x(1))); dx(2) = k*(-x(1)*x(3) + r*x(1) - x(2)); dx(3) = k*(x(1)*x(2) - b*x(3)); end The lorenz function is called in test.m and solved numerically. Here the fourth-order Runge-Kutta method is used and the initial values of the equations are set to (1, 1, 1). Finally, the trace of x is presented in three and one dimensions, respectively: % test.m clc; clear all; dt = 1e-3; t = 0 : dt : 100 - dt; s = 10; r = 28; b = 8/3; k = 1; x = zeros(3, length(t)); x(:, 1) = [1; 1; 1]; for tn = 1 : 1 : length(t) - 1 k1 = lorenz(x(:, tn), s, r, b, k); k2 = lorenz(x(:, tn) + dt*k1/2, s, r, b, k); k3 = lorenz(x(:, tn) + dt*k2/2, s, r, b, k); k4 = lorenz(x(:, tn) + dt*k3, s, r, b, k); x(:, tn + 1) = x(:, tn) + dt/6*(k1 + 2*k2 + 2*k3 + k4); end figure; plot3(x(1, :), x(2, :), x(3, :), '-'); box on; grid on; drawnow; figure; subplot(3, 1, 1); plot(t, x(1, :)); title("x"); subplot(3, 1, 2); plot(t, x(2, :)); title("y"); subplot(3, 1, 3); plot(t, x(3, :)); title("z"); The simulation results are shown in the following figure: 3.How to Design an Analog Computer How can this set of equations be "translated" into an analog circuit? This is illustrated by a diagram: In analog circuits, the most convenient circuits used to perform calculations are those designed based on inverting amplifiers, which are simpler in form than non-inverting amplifiers and also avoid distortion and noise from common-mode operation, which was particularly important in the early years of op-amp development. In the first step, determine the implementation of the various operations as: * Integral: use the inverting integrator circuit, but temporarily discard the resistor, which is equivalent to integrating the input current and multiplying by -1. * Multiplying by -1: use the inverting amplifier and set the two resistors with the same value. * Addition: use current summation instead of voltage, so the form is simpler. * Multiplying by a constant k: use a resistor with a resistance of 1/k, the voltage across it is converted into a current and output as a result. * Multiplication: implemented using a dedicated voltage multiplier. In the second step, the integrator is cascaded with the inverting amplifier, and the output of the integrator is set to -x, the output of the inverter is x, and the input of the integrator is dx/dt. Then calculate the equivalence of dx/dt and input it at dx/dt. The x and -x signals needed in the operation are obtained from the above output. y and z signals are obtained in the same way. The signal flow diagram can be drawn in this... Read more >> View all details Files lorenz_attractor_1.asc LTSpice simulation file Download asc - 5.59 kB - 05/17/2023 at 13:18 Enjoy this project? Share Discussions [ ] [Post comment] [ ] Log In/Sign up to comment Become a Hackaday.io Member Create an account to leave a comment. Already have an account? Log In . Sign up with Github Sign up with Twitter OR [ ] [ ] [ ] [captcha] Sign up [3357631424] Anthony wrote 2 days ago * point Hey, though such devices have been built before I thought this project was really cool and exceptionally documented. I feel I can mostly -- though perhaps not 'entirely'-- follow you through transition between the formulae, and then deriving the eventual circuit. Do you have a textbook you could suggest where I would be able to learn more about this? Are you sure? yes | no [7123831681] CheeenNPP wrote 2 days ago * point Thank you for your reply! Although I didn't refer to a book dedicated to analog computer design, the book LINEAR CIRCUIT DESIGN HANDBOOK helped me a lot: https://www.analog.com/en/education/education-library/ linear-circuit- design-handbook.html In addition, there are many examples of circuit design ideas and techniques in the linear technology application notes, which you can find at analog.com. Are you sure? yes | no Similar Projects [2230521682] Precision peak detector using op amps to manage input impedance, peak stability and output drive. Project Owner Contributor Precision peak detector using Op Amps Joseph ThomasJoseph Thomas [submission] Hackaday Prize 2019 [5561921563] A graphic equalizer that fits in your pocket! Project Owner Contributor Mini Audio Equalizer Grant GiesbrechtGrant Giesbrecht [4056821591] Available in different package with single op-amp and others with more than one operational amplifier Project Owner Contributor LM741 IC operational amplifier, Utsource Electroniclovers123Electroniclovers123 [4621491531] A Raspberry PI HAT designed to control an aeroponics tower system Project Owner Contributor SpiroBoard Aeroponics pH / EC / Motor Controller Chris JohnsonChris Johnson Does this project spark your interest? Become a member to follow this project and never miss any updates [ ][ ] [ ] [captcha] Become a member Going up? About Us Contact Hackaday.io Give Feedback Terms of Use Privacy Policy Hackaday API (c) 2023 Hackaday By using our website and services, you expressly agree to the placement of our performance, functionality, and advertising cookies. Learn More Ok, I agree [impression] Yes, delete it Cancel Report project as inappropriate You are about to report the project "Analog Lorenz Attractor Computer ", please tell us the reason. [ ] [Report] Send message [Hello, I really lik] Your application has been submitted. [Send] Remove Member Are you sure you want to remove yourself as a member for this project? Project owner will be notified upon removal. Remove Nevermind