Have you been watching Chernobyl? Well, so has everyone else. Right now it seems the whole Internet is comprised of armchair dosimetrists counting roentgens in their sleep, but [Mark Wright] doesn’t need a high-budget TV show to tell him about the challenges of wrangling the atom with 1980s technology. He’s done it for real. His memories of working at a Westinghouse Pressurized Water Reactor over 30 years ago are so sharp that he’s been building a nuclear reactor “simulator” running on the Raspberry Pi that looks nearly as stressful as sitting in control room of the real thing.
The simulator software is written in Python, and is responsible for displaying a simplified overview of the reactor and ancillary systems on the screen. Here all the information required to operate the “nuclear plant” can be seen at a glance, from the utilization of individual pumps to the position of the control rods.
To play the game, if one can call it that, you must keep the virtual reactor going at peak performance for as long as possible. Sounds easy? You’ll also have to avoid making procedural mistakes and deal with randomized fault conditions. Did your plant just lose its outside source of power? Turbine just go offline? You better know which buttons to push, and when.
But the software is only part of the equation. Just as flight simulator aficionados build physical cockpits for their digital aircraft, [Mark] has built an incredible control panel for his NuclearPi. It includes an absolutely dizzying array of annunciators, indicator lights, buttons, and knobs. Everything is connected to the Pi through four 32 channel I/O expanders from AB Electronics UK, but even with a whopping 128 channels available, he still had to use some 7404 gate ICs to make everything fit.
The control panel has gone through several hardware revisions over the last couple years, as he finds what does and doesn’t work. At one point [Mark] was using 6.3V incandescent bulbs. Not great, not terrible. But he since switched the whole board over to 12V, with an array of relays for delivering power to the appropriate annunciator. We’d love to see, and hear, this thing in action.
But perhaps the most impressive element of this project is just how long [Mark] has been working on it. He described the initial version of the simulator in the March 1984 issue of 80 Micro, a magazine for TRS-80 owners. A full two years before the explosion of Reactor No. 4 at Chernobyl demonstrated the complexity of nuclear power to the general public, he was tinkering with his own virtual version using a string of Christmas lights and a 1.78 MHz processor.
Looking at the final simulator as a stand-alone project, it’s impressive enough. But to see a project with such a long and storied history is truly something special. While the individual tinkerer might never be able to build their own reactor, [Mark] has proved that at least the experience of having a home nuclear reactor is not outside the realm of possibility.
I remember our NPP operator ČEZ Group a.s. had some simulator on their website. I found it here:
https://www.cez.cz/cs/o-cez/vzdelavani-a-vyzkum/energetika-zabavne/nainstalujte-si/jaderny-reaktor-na-vasem-pc-46378/index.shtml
but it is only in Czech and a little bit old. This software was for the VVER 1000 (PWR type reactor) equipped NPP.
In school (as a nuclear engineer) we had a scale model primary coolant loop that was used for labs (there was also an operating reactor in the building that was used for other labs, but the mini coolant loop was great for some things). Said miniature coolant loop was fairly old and actually heated the water up pretty hot; it was notorious for springing leaks and spray hot water everywhere. Really kept you on your toes.
Pretty sure it’s still in use, it wasn’t that long ago that I was using it.
Sounds like real life.
It would be awesomely apropos to run this on an Atomic Pi.
Came here to post that, but you beat me to it.
A very impressive build, regardless of what it’s working on.
Here’s another online simulator
https://www.ae4rv.com/games/nuke.htm
Put the control rods to 100% when you start to get the reactor going, if it overheats just squirt it with some emergency coolant. Oh by the way I have never worked at a nuclear reactor, so don’t worry.
Actual startup for the research reactor at the university I went to involved the use of a fishing rod.
Is this panel based on the one in “The China Syndrome”
https://www.youtube.com/watch?v=nemYBeT4aQY
The annunciators light panels, vertical gauges, and pistol grip switches are very similar to what we have at my plant. They did a pretty good job, and so did Mr. Wright. Simulators are a very important part of our training allowing us to practice for the big one with as great amount of realism.
Watched that a couple of weeks ago, the timing of it’s release (12 days before Three Mile Island) with the plausibility of the plot and great acting is quite a combination.
Isn’t the film actually a large part of the reason the Three Mile Island incident is considered to be a big disaster? It actually had no long term effect.
I wanted to add a video link to Saturday Night Live’s “Pepsi Syndrome” here, but I couldn’t find one.
(sigh!)
Just remember, you can’t put too much water in a nuclear reactor.
Well, except making millions of people anti-nuclear and causing other untold millions to die from preventable emissions of pollution and CO2.
Also, there’s the weapons grade irony of people campaigning against nuclear power until it turns out to be one of the few ways, if not the way that humanity could hope to avert a climate catastrophe – and then campaigning against it because their own earlier campaigning against it has made it entirely too expensive and slow to implement.
That looks a lot like an Atari 600 game I had in the 90s called Scram
https://en.wikipedia.org/wiki/Scram_(video_game)
There is a game where you try and hack into a reactor.
https://game.hacker.nz/
Oddly enough back in my Apple 2 days I sometimes would pass the time with a game that reiterated everything that went wrong with TMI. The idea was to not allow the reactor to go supercriticla and cause a core meltdown. Which as it happens the containment building would have,ah, contained but the programmers of the original game didn’t know that. My brother translated it from one of the other examples of computer graphics and BASIC.
You can still play it!
https://hackaday.io/project/19352-fixing-37-year-old-software-three-mile-island
Now what I want is the simulation of a PXK Pergium reactor, as used by the Colony from that Star Trek episode. And complete with the Horta grabbing the circulation pump, and Scotty’s attempt to replace it, at least temporarily.
I’m a software/electrical/mechanical/nuclear engineer for a nuclear simulator at a large plant. I was in nuclear plant operations for 2 decades before making the move to the simulator. Each simulator has around 15,000 analog and digital IO points for switches, meters, lights, recorders, buttons, and such. Most of the code is in Fortran. It’s really a lot of fun keeping it all working. I applaud this guy’s motivation!
Hi Matt,
I started in Technical Support right out of college. My plant was still under construction (four units, then two and finally one was built). As part of our training, we got to take a Power Plant Principles course offsite at the simulator. Experiencing the simulator is what started this obsession in building my own. Seven years later, on my last day at the plant, the Shift Foreman escorted me around the control room where I tried to memorize everything!
That’s awesome. I still enjoy every day at work.
WOW!! I can’t believe I found this!! Sorry to be so dramatic, but I received that issue in the mail in 1984 (along with A BUNCH of it brothers). I thought that was the coolest project I’d ever seen. Many years later and many moves later, I found all of my TRS-80 stuff and realized that the Raspberry Pi would be the perfect platform to bring this project back and I have been working on a version of this project for the Raspberry Pi for 4 or 5 year (mostly just off and on as I haven’t REALLY taken the time to learn the Raspberry Pi programming techniques.) I would love it if you would be willing to chat some about the original code and where it is now.
Do the simulators use the same annunciators, control switches, gauges, etc as the actual control room or do they substitute lower cost parts for the simulators?
Every single component is identical to the real thing down to the lighting, the annuciator SPL, and carpet. We take some liberties with some components such switches that may require a dozen decks of contacts in the plant. The simulator only needs one.
Oh please tell us more about this interesting sounding reactor :D
“Parameters out of range” What they mean is that the conditions in the simulation get into the range that gets the site taken down very quickly.
I really like the picture where he shorted the fuses for testing… Good thing this is a simulator.
On a more serious note, good job altough a bit annoying to read because you have to click “next” after every small article/note.
Any idea if the software is available/open-source? The WordPress site he has this hosted on is using an almost unusable theme so I’m not fond of trying to wade through all that white-space.
https://github.com/NuclearPi/NuclearPi-Source-Code
Mark was kind enough to upload the Python source for his simulator, PCB files, and even the images used for the labels on the panel to GitHub right before this article went out. He’s set the bar very high, but it would be awesome to see somebody else take up the challenge of building a sister station.
Where is AZ-5 button? :-)
You didn’t see it because it’s not there!
Yeah, ‘everyone’ is watching it. Step outside and get some fresh air…
Take this man to the infirmary. He’s delusional.
I remember a shareware DOS game called Oakflat nuclear power plant simulator. Never did get the full version of it but I had a lot of fun with it when I was younger.
…then you’ll be pleased to know that Gamtech Software created a WIndows version!
Hi, after some info exchange between me and the NuclearPi author, I was able to implement the HAL (HW abstraction layer) which makes it possible to run the NuclearPi without real HW using different drivers (MQTT and LED Strip drivers are in (slow) development). First example of the HAL using the GUI driver is here: https://youtu.be/3PuAU9ARX8k