Firms are charged depending on the maximum amount of energy that can be produced at each plant they operated and figures from ScottishPower show that on average energy providers in the southern counties of England are charged £9 for every kilowatt hour, compared with £14 in most of Scotland and £22 in the Highlands.
Mr Weir said: "Transmission and locational charges are penalising energy providers in Scotland, and this daft and discriminatory regime needs to end."
He added that the charges jeopardise investment and undermine the drive for renewable energy.
Last week, Mr Weir accused Labour of becoming spin doctors for the Nuclear power industry.
Click here to run an energy price comparison, and see if you could be paying less for your gas and electricity.