I'm having trouble building a circuit to generate square, triangular, and sine waves. In theory (calculations), everything is correct, and in the simulation (done in LTSpice) everything is also correct. However, when I finish the assembly, the circuit doesn't oscillate (the wave generation doesn't work for square and triangular waves). I'm using the values according to the image and two UA741 Op-Amps. Interestingly, by mere coincidence, I discovered that using the UA741CN K9E218 in the square wave generator circuit, and UA741CN K9B01W, the circuit works as expected. Only if I use these two specific Op-Amps, in that order. But I'm not sure what that code means. Do I need to add something? A buffer, perhaps? Could you help me make it work for any UA741? I imagine it could be something related to their configuration or even imperfections, etc.
Technically, your circuit is linear. If U2 were a proper comparator, with slight input hysteresis, then this design would work well, but it's a regular op-amp.
This whole system has sufficient phase margin to turn what needs to be positive feedback into negative, at the frequency you want this to oscillate. Consequently, it can be quite stable, which is the last thing you want in an oscillator.
Try reducing U2's gain to 100, with R4 and R5 here:
This has the effect of keeping loop phase near 0° (for positive feedback) over a much broader range of frequencies, including the expected frequency of oscillation.
To be honest, even though my frequency analysis revealed this phase issue, it's certainly questionable for huge signals, and when the op-amp is supposed to rail, as in this application. Still, I tried it, and it worked, so I suggest you try it too.