1 pointYou can also get other PLCs at this price range. Though I never actually used them, Rockwell Micro820 and 830 series looks interesting (industrial grade, some build-in DIO and AIO, ability to extend by pluggable modules, Ethernet/IP communication). And AFAIK they come with free software (Connected Components Workbench). There are of course others - Siemens Logo!, Mitsubishi also have some cheaper models...
1 pointThere appears to be very little label after the barcode (left side in your image). There are quiet zone specifications for all barcodes; maybe this one does not meet spec. I opened the first image first using MS Office picture manager where I increased the contrast. I then opened it in ms-paint and deleted the dark region at the left (surface label was placed on). This effectively created a larger quiet zone and then zxing decoded the barcode... I didn't have to flip the image once I increased the quiet zone.
1 pointIn LV 2009, this is how I would recommend that the Singleton pattern be implemented: AQSingleton.zip No wrapping library. No replication of VIs caused by having public wrappers and private implementations. No excessive copy overhead. And, yes, thread safety for parallel public calls. This demo class implements three public functions: Set Path, Append Path (which does a read-modify-write) and Get Path. Note that there is one minor issue with this implementation *if* (and only if) you have multiple top-level VIs all using the same central storage and the one that accesses the global first quits before the others are ready. The workaround solutions for that are ... problematic. It is in the set of "holes in the LV language" that we've been slowly patching o'er these many years.