Enhancing smart farming through the applications of Agriculture 4.0 technologies