Эта штука управляется в несколько уровней. Собственно сами детальки двигает PLC (возможно, несколько), набитый MCU по самые не балуйся. Программируются они на разных языках, один из популярных - LD. MCU могут иметь собственную программу. "Сверху" всем этим рулит компьютер, там в общем-то не принципиально, на чем писать. Проблема не столько в собственно написании программы, сколько во всей этой инженерно-токарно-фрезеровочной науке. Научиться писать что-то такое можно запросто за пару лет, если иметь серьезное инженерное образование.