No voy a dar recomendaciones específicas sobre dispositivos, pero ofreceré algunos consejos.
Como usted dice, un adaptador USB-RS485 es la mejor solución. Los adaptadores que utilizan un puerto RS232 están disponibles, pero tienen algunas desventajas. Primero, estos dispositivos generalmente usan la línea RS232 RTS para controlar la dirección de los datos. Si se usan los controladores de Windows RS232, puede encontrar problemas de tiempo (porque la línea RTS no fue diseñada para este propósito) aunque algunos adaptadores tienen sus propios controladores de dispositivo para evitar este problema.
Otros adaptadores dicen tener control de dirección 'automático'. Los que he visto hacen esto al conectar los datos transmitidos a la línea de habilitación de datos del chip del controlador, de modo que cuando la línea 485 debe conducir la línea al estado alto, en realidad pasa a estado triple y se basa en la extracción Resistencias de subida / bajada para 'conducir' la línea. Esta solución proporciona una capacidad de unidad deficiente y tiempos de espera lentos (que pueden ser la causa de su experiencia a baja velocidad).
Otro problema potencial es el poder. Como los puertos RS232 no tienen alimentación como tal, los adaptadores RS232 obtienen su energía de las líneas de control de flujo o datos. Un adaptador que conozco tiene un curioso circuito de alimentación interno 'bootstrap' (no te aburriré con los detalles) que se basa en algunas transiciones de datos de transmisión para 'arrancarlo', por lo que es completamente 'sordo' hasta que se transmiten algunos datos .