Contribution to the factory io project 140 (CNC machine for panel optimization)

Hello,

A great idea for the new FACTORY IO would be a panel where a robot draws—acting as if it were a mouse. This way, CNC operations could be visually simulated; specifically, the robot would draw the cuts on the board (i.e., it would draw whenever the milling bit lowered). Of course, this would require a large-scale robot, like the one I showed in the images regarding improvements; for me, being able to simulate CNC machining in FACTORY IO would be an amazing feature.

I know that implementing a tracing function on a panel shouldn’t be too complicated. In any case—and I’ve actually done this before—I can adapt the current robot to follow the machine’s movement; since the paths involve straight lines, the visualization should turn out reasonably well. We’ll see if it’s feasible.

Best regards.

Hello,

We are adapting the application currently under development based on a project of mine from some time ago; here is the one we are currently building:

Let’s look at another scenario to try out with the new version of Factory I/O: having the robot pick up cut boards and place them onto a large side conveyor belt. Furthermore, if we enable the robot to draw on a board, we could also execute the second part of this video:

This—along with the olive mill project—would represent some of the most ambitious applications possible with the simulator (an olive mill unloading yard and this full-scale project); I hope the future simulator supports these kinds of concepts.

Regards.

Hello:

I’m going to demonstrate that with a little effort and determination, you can build an application—no matter how complex—and this one is certainly complex. You see, I used AI to resolve the error I mentioned in the first video; I pasted my code into it, and—using the exact same structure, variables, concepts, functions, and everything else I had originally implemented—it was able to adapt the code to fix the error I couldn’t find. This demonstrates a few things: that students don’t learn because they don’t want to, and teachers don’t teach because they don’t know how.

As you know, I am self-taught in programming; everything you see here, I learned on my own—without teachers or university. I learned by watching how others did things on sites like Stack Overflow and Code Project, as well as through blogs and YouTube tutorials. I would copy code, research and analyze it, run it, and learn through trial and error. I learned to structure a library where everything is mutually compatible, and I learned to create programs that aided my learning and coding process—some even do the work for me (you can see them on my channel). All of this was done purely as a hobby. Today, however, there is a tool called AI—which, of course, I didn’t have back then—that is capable of doing what you see in this video; therefore, there is no longer any excuse not to try creating the scenes featured in my contributions.

Take the user Bob Chen as an example: he created a Snake game for a PLC by consulting AI. I had already created one myself—you can verify the video date on my channel—meaning I did it without AI, which is the point I’m making. So, if he could do it, there’s no reason why anyone else willing to put in the effort and learn to program couldn’t do the same.

I adapted mine to a program I already had, but if I had to do it now, I wouldn’t hesitate to consult AI, given how things stand.

Ofrez, of course, there is a downside: to consult the AI ​​about complex matters like this, you need some background—at least basic programming knowledge. However, if you lack that, you can simply start by asking the AI; you can even ask here without worrying about not being up to the task. You just ask, others respond and consult the AI, and gradually you will see the positive results you achieve.

But if enthusiasm drops every time a new contribution is uploaded, obviously things aren’t working. Even the creators of this powerful tool—FACTORY IO—don’t seem enthusiastic anymore; you don’t see that spark of excitement about the new simulator. You’d expect people to be talking about the features being added, the improvements being made—anything, really—but the community is flat and lifeless, giving the impression that things aren’t going well.

If we combine the simulator with AI, we could achieve great things in a community like this; this video is a perfect example:

I hope I’m wrong and the situation isn’t what it seems. I encourage the creators to take the leap; often, fear and insecurity are bigger obstacles than the actual problem.

NOTE: This is just my opinion—I could be wrong—but it is as valid as anyone else’s.

There are things about the new Factory I/O that simply cannot be discussed publicly before they are released.

During development, we experiment with many ideas and features, and not everything we work on will necessarily ship. There can be many reasons for this: performance issues, technical limitations, features that do not add enough value compared with the complexity they introduce, changes in priorities, or simply because an idea does not work as well in practice as it did on paper.

For this reason, it would be misleading for us to publicly discuss every feature we are experimenting with as though it were something that will eventually be part of the product.

There is also a business aspect that we cannot ignore. Factory I/O represents many years of work, research, experimentation and accumulated knowledge. There are now several companies and products attempting to imitate Factory I/O, so we need to be careful about what we disclose before a release. The work we do and the ideas behind it are valuable business assets that we must protect.

I also want to address the tone of some of your recent posts. I do not appreciate the way you have been addressing Factory I/O and its creators, or the repeated suggestions that a lack of public information somehow means that we have lost enthusiasm, are afraid to move forward, or that things are not going well.

You are of course welcome to have opinions about Factory I/O and to criticize decisions we make. We have always valued feedback from our community. But there is an important difference between constructive criticism and repeatedly making negative assumptions about the people developing the product without knowing what is happening behind the scenes.

This forum should be a constructive place where people share ideas, projects and knowledge with a positive attitude. That does not mean everyone has to agree with us, but discussions should remain respectful.

There are strong reasons behind the decisions we make, both about the development of Factory I/O and about what we choose to share publicly. The fact that we do not discuss something does not mean that nothing is happening.

We remain very committed to Factory I/O and to its future. When we have things that are ready to be shown and that we are confident will become part of the product, we will share them.

1 Like

Hi Bruno:

You mention that you don’t like the tone of some of my recent posts—you speak in the plural—so now I’d like to know exactly which posts those are.

If there’s one thing that defines me, it’s that I say things exactly as I think them; I don’t sugarcoat reality, and I’ll never write something I don’t truly believe. I even stated this at the end of the post: I hope I’m wrong, but the impression I get is the one I get—period. I’ve offered to lend a hand—for free, with no strings attached—and I’ve demonstrated the simulator’s potential with 200 scenes that no one thought were even possible. I’ve given most of them away for free for you to download (six of them have been downloaded over 50 times each, and if you count the others, we’re talking thousands of downloads). I’ve turned down offers from competitors, and now, simply because of a comment that is just as valid as anyone else’s, you tell me I’ve stepped out of line. Look, it’s very simple: if I’ve upset anyone, it wasn’t my intention. If you feel my participation in the community is a problem, just tell me and I’ll stop participating. I have no interest in staying here if I’m considered a problem. I repeat: if you aren’t comfortable with me here, just say so and I’ll leave. It’s no big deal—don’t worry about it…

You also say that “discussions should remain respectful.”

So, tell me: where exactly have I been disrespectful here? Can you tell me?

I look forward to your reply.

In the meantime, let’s move on:

This project cannot be simulated in FACTORY IO because the robot is too small; while it would move, the cutting action wouldn’t be clearly visible. Therefore, I hope we soon have a robot like the one in the image—one wide enough to span 5 or 6 conveyors and long enough to run this test, as well as a machine vision test that I was also unable to simulate. However, I am providing the flowchart here so students can fully understand how the machine operates. By the way, the code for this project can be created with the help of AI, as shown in the video on this topic available here and on my channel.

Program flowchart (machine component); I hope you find it interesting:

Regards

Hi,

I don’t want this to turn into a confrontation, and that was not the intention of my reply.

First, to be clear, I am not asking you to leave the community, nor do I consider your participation a problem. You have contributed a great deal over the years, both through the scenes you have shared and through the time you have invested in showing what can be achieved with Factory I/O. We recognize and appreciate that.

I also don’t think it would be productive to start going through individual posts and debating sentence by sentence whether something was respectful or disrespectful. My comment was about the general tone and the impression created by some recurring remarks about the people behind Factory I/O.

Perhaps my wording came across more strongly than I intended, and if it gave you the impression that you were not welcome here, that was certainly not my intention. There is no need for this to become anything bigger than that. I think we both care about Factory I/O and about what people can learn and create with it, even if we sometimes see things differently.

So, as far as I am concerned, we can leave this matter here and move forward.

Hi Bruno:

Don’t worry, it’s no problem at all. It’s true that we’re both interested in Factory IO, and when there’s genuine interest, it’s natural to have differing viewpoints—in my case, wanting to experiment and see what’s possible; in yours, wanting everything to turn out right. That’s perfectly logical and normal. Besides, having different perspectives is a good thing; after all, when everyone thinks the same way, it usually means no one is thinking very deeply.

I repeat: it’s no big deal. Let’s keep enjoying the simulation. Tomorrow I’ll upload contribution 141; it will feature a factory entrance designed like a traffic roundabout. Also, if you’re up for it, feel free to send me whatever you’ve got done so far, and we can review it privately. If you don’t want to or can’t, that’s fine too—we can always test it out later on.

I realize how complex programming is, and I know the effort you’re putting in is no small task.

Thanks for everything.

Regards

Hello,

This project cannot be simulated because the robot is very small; while you would see the robot move, the movement wouldn’t be sufficient to clearly observe the cuts. Hopefully, we will soon be able to simulate this project using a larger robot. However, there is always the option of setting it up on the HMI first; exporting it to the robot later isn’t very difficult, since the robot itself provides the position values…

So, if everything goes well, this is the result—demonstrating that AI isn’t here to replace anyone, but rather to make the work easier.

Regards.